Am Wed, 19 Oct 2011 15:00:23 +0530
schrieb Nilesh Govindarajan <[email protected]>:
> This is what I get when I try to install networkmanager-9999 which is
> required by gnome-3.2.0
> [SNIP]
> -pthread -pthread
> -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
> ./ip6-manager/.libs/libip6-manager.a
> ./supplicant-manager/.libs/libsupplicant-manager.a
> ./dnsmasq-manager/.libs/libdnsmasq-manager.a
> ./ppp-manager/.libs/libppp-manager.a
> ./modem-manager/.libs/libmodem-manager.a
> ./bluez-manager/.libs/libbluez-manager.a ./settings/.libs/libsettings.a
> /media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999/libnm-util/.libs/libnm-util.so
> ./backends/.libs/libnmbackend.a ../libnm-util/.libs/libnm-util.so
> -luuid -lssl3 -lsmime3 -lnssutil3 -lnss3 -lplds4 -lplc4 -lnspr4
> -ldbus-glib-1 -ldbus-1 -lpthread /usr/lib64/libgudev-1.0.so
> -L/usr/lib64 /usr/lib64/libudev.so -lgthread-2.0 -lnl
> -lpolkit-gobject-1 -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lrt
> -lglib-2.0 -lm -ldl -pthread NetworkManager-main.o: In function
> `main': main.c:(.text+0xa63): undefined reference to
> `g_thread_supported' collect2: ld returned 1 exit status
> make[4]: *** [NetworkManager] Error 1
> make[4]: Leaving directory
> `/media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999/src'
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory
> `/media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999/src'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory
> `/media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory
> `/media/500GB/gentoo_portage/tmp/portage/net-misc/networkmanager-9999/work/networkmanager-9999'
> make: *** [all] Error 2
>
>
> The error is g_thread_supported is an undefined reference. This seems
> to be related to glib.
what is your version of glib? in the version i have installed
(dev-libs/glib-2.28.8) it is a macro in gthread:
# grep g_thread_supported /usr/include/glib-2.0/glib/gthread.h
* g_thread_supported macro but provided for language bindings.
(g_thread_supported () ? G_THREAD_UF (op, arg) : (fail))
(g_thread_supported () ?
\ (g_thread_supported
() ? ((void(*)(GCond*, GMutex*, gulong, gchar*))\ (g_thread_supported
() ? \ #define
g_thread_supported() 1 #define g_thread_supported()
(g_threads_got_initialized)
an a macro is not a function you can link to compiled into the library:
# nm /usr/lib64/libgthread-2.0.a | grep g_thread_supported
that would explain why linking against it doesn't work.
maybe that changed in newer versions of glib?
> Anybody has a solution? I tried masking
> networkmanager, but emerge won't allow me to do that when I try to
> install gnome-base/gnome-3.2.0 (layman overlay)
>