[Pkg-utopia-maintainers] Bug#1015556: Bug#1015556: network-manager: ftbfs with LTO (link time optimization) enabled

Michael Biebl biebl at debian.org
Sat Aug 13 14:48:50 BST 2022


Control: tags -1 - moreinfo unreproducible

I looked into this a bit more and the relevant failure message appears to be


>>>linker script "./src/libnm-client-impl/libnm.ver" contains symbols that are not exported by library "./src/libnm-client-impl/.libs/libnm.so":
>      1	nm_access_point_get_last_seen at libnm_1_0_6
>      2	nm_device_get_metered at libnm_1_0_6
>      3	nm_device_wifi_request_scan_options at libnm_1_0_6
>      4	nm_device_wifi_request_scan_options_async at libnm_1_0_6
>      5	nm_ip_address_dup at libnm_1_30_8
>      6	nm_ip_route_dup at libnm_1_30_8
>      7	nm_metered_get_type at libnm_1_0_6
>      8	nm_setting_connection_autoconnect_slaves_get_type at libnm_1_0_4
>      9	nm_setting_connection_get_autoconnect_slaves at libnm_1_0_4
>     10	nm_setting_connection_get_mdns at libnm_1_10_14
>     11	nm_setting_connection_get_metered at libnm_1_0_6
>     12	nm_setting_connection_mdns_get_type at libnm_1_10_14
>     13	nm_setting_ip_config_get_dns_priority at libnm_1_2_4
>     14	nm_setting_ip_config_get_required_timeout at libnm_1_30_8
>     15	nm_setting_wired_get_wake_on_lan at libnm_1_0_6
>     16	nm_setting_wired_get_wake_on_lan_password at libnm_1_0_6
>     17	nm_setting_wired_wake_on_lan_get_type at libnm_1_0_6
>     18	nm_utils_enum_from_str at libnm_1_0_6
>     19	nm_utils_enum_to_str at libnm_1_0_6
>     20	nm_utils_wifi_2ghz_freqs at libnm_1_0_6
>     21	nm_utils_wifi_5ghz_freqs at libnm_1_0_6
> make[4]: *** [Makefile:21307: check-local-exports-libnm] Error 1

Looking at the version script src/libnm-client-impl/libnm.ver [1], the 
symbols not being exported in the LTO build are the following:

libnm_1_0_4 {
	#nm_setting_connection_autoconnect_slaves_get_type at libnm_1_0_4;
	#nm_setting_connection_get_autoconnect_slaves at libnm_1_0_4;
} libnm_1_0_0;

libnm_1_0_6 {
	#nm_access_point_get_last_seen at libnm_1_0_6;
	#nm_device_get_metered at libnm_1_0_6;
	#nm_device_wifi_request_scan_options at libnm_1_0_6;
	#nm_device_wifi_request_scan_options_async at libnm_1_0_6;
	#nm_metered_get_type at libnm_1_0_6;
	#nm_setting_connection_get_metered at libnm_1_0_6;
	#nm_setting_wired_get_wake_on_lan at libnm_1_0_6;
	#nm_setting_wired_get_wake_on_lan_password at libnm_1_0_6;
	#nm_setting_wired_wake_on_lan_get_type at libnm_1_0_6;
	#nm_utils_enum_from_str at libnm_1_0_6;
	#nm_utils_enum_to_str at libnm_1_0_6;
	#nm_utils_wifi_2ghz_freqs at libnm_1_0_6;
	#nm_utils_wifi_5ghz_freqs at libnm_1_0_6;
} libnm_1_0_4;


libnm_1_2_4 {
	#nm_setting_ip_config_get_dns_priority at libnm_1_2_4;
} libnm_1_2_0;

libnm_1_10_14 {
	#nm_setting_connection_get_mdns at libnm_1_10_14;
	#nm_setting_connection_mdns_get_type at libnm_1_10_14;
} libnm_1_10_2;

libnm_1_30_8 {
	#nm_ip_address_dup at libnm_1_30_8;
	#nm_ip_route_dup at libnm_1_30_8;
	#nm_setting_ip_config_get_required_timeout at libnm_1_30_8;
} libnm_1_30_0;


They all have a preceeding '#'.

I've never seen this syntax before. Is this a linker/compiler bug in LTO 
mode?



[1] 
https://salsa.debian.org/utopia-team/network-manager/-/blob/debian/master/src/libnm-client-impl/libnm.ver

-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-utopia-maintainers/attachments/20220813/c7f0ecff/attachment.sig>


More information about the Pkg-utopia-maintainers mailing list