Gentoo Archives: gentoo-user

From: Jonas de Buhr <jonas.de.buhr@×××.net>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Networkmanager-9999 won't compile
Date: Thu, 20 Oct 2011 09:19:17
Message-Id: 20111020111806.06338828@toxic.dbnet
In Reply to: [gentoo-user] Networkmanager-9999 won't compile by Nilesh Govindarajan
1 Am Wed, 19 Oct 2011 15:00:23 +0530
2 schrieb Nilesh Govindarajan <contact@××××××××.com>:
3
4 > This is what I get when I try to install networkmanager-9999 which is
5 > required by gnome-3.2.0
6 > [SNIP]
7 > -pthread -pthread
8 > -Wl,--as-needed ../marshallers/.libs/libmarshallers.a ./logging/.libs/libnm-logging.a ./dns-manager/.libs/libdns-manager.a ./vpn-manager/.libs/libvpn-manager.a ./dhcp-manager/.libs/libdhcp-manager.a
9 > ./ip6-manager/.libs/libip6-manager.a
10 > ./supplicant-manager/.libs/libsupplicant-manager.a
11 > ./dnsmasq-manager/.libs/libdnsmasq-manager.a
12 > ./ppp-manager/.libs/libppp-manager.a
13 > ./modem-manager/.libs/libmodem-manager.a
14 > ./bluez-manager/.libs/libbluez-manager.a ./settings/.libs/libsettings.a
15 > /media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999/libnm-util/.libs/libnm-util.so
16 > ./backends/.libs/libnmbackend.a ../libnm-util/.libs/libnm-util.so
17 > -luuid -lssl3 -lsmime3 -lnssutil3 -lnss3 -lplds4 -lplc4 -lnspr4
18 > -ldbus-glib-1 -ldbus-1 -lpthread /usr/lib64/libgudev-1.0.so
19 > -L/usr/lib64 /usr/lib64/libudev.so -lgthread-2.0 -lnl
20 > -lpolkit-gobject-1 -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lrt
21 > -lglib-2.0 -lm -ldl -pthread NetworkManager-main.o: In function
22 > `main': main.c:(.text+0xa63): undefined reference to
23 > `g_thread_supported' collect2: ld returned 1 exit status
24 > make[4]: *** [NetworkManager] Error 1
25 > make[4]: Leaving directory
26 > `/media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999/src'
27 > make[3]: *** [all-recursive] Error 1
28 > make[3]: Leaving directory
29 > `/media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999/src'
30 > make[2]: *** [all] Error 2
31 > make[2]: Leaving directory
32 > `/media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999/src'
33 > make[1]: *** [all-recursive] Error 1
34 > make[1]: Leaving directory
35 > `/media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999'
36 > make: *** [all] Error 2
37 >
38 >
39 > The error is g_thread_supported is an undefined reference. This seems
40 > to be related to glib.
41
42 what is your version of glib? in the version i have installed
43 (dev-libs/glib-2.28.8) it is a macro in gthread:
44
45 # grep g_thread_supported /usr/include/glib-2.0/glib/gthread.h
46 * g_thread_supported macro but provided for language bindings.
47 (g_thread_supported () ? G_THREAD_UF (op, arg) : (fail))
48 (g_thread_supported () ?
49 \ (g_thread_supported
50 () ? ((void(*)(GCond*, GMutex*, gulong, gchar*))\ (g_thread_supported
51 () ? \ #define
52 g_thread_supported() 1 #define g_thread_supported()
53 (g_threads_got_initialized)
54
55 an a macro is not a function you can link to compiled into the library:
56
57 # nm /usr/lib64/libgthread-2.0.a | grep g_thread_supported
58
59 that would explain why linking against it doesn't work.
60
61 maybe that changed in newer versions of glib?
62
63 > Anybody has a solution? I tried masking
64 > networkmanager, but emerge won't allow me to do that when I try to
65 > install gnome-base/gnome-3.2.0 (layman overlay)
66 >