Summary: | app-admin/gkrellm-2.3.5-r1 fails to compile with /usr/lib/libgmodule-2.0.so.0: could not read symbols: Invalid operation | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Chema <chemacg> |
Component: | [OLD] GNOME | Assignee: | Jim Ramsay (lack) (RETIRED) <lack> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | desktop-dock, gnome |
Priority: | Normal | Keywords: | InVCS |
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build.log
build.log - gcc 4.5.3 patch to fix linking error |
Description
Chema
2012-07-29 16:57:57 UTC
Created attachment 319614 [details]
build.log
It's not a glib-2.32 problem, something is broken (or different) in your system, like gcc-4.6 usage, ld.gold... Created attachment 319778 [details]
build.log - gcc 4.5.3
The error is exactly the same with gcc 4.5.3 and i don't have a clue of what ld.gold is, so i don't think i've changed something of it.
Any other idea?
Thanks.
I've found the culprit, it's binutils (or the gkrellm ebuild), the last working version being 2.21.1-r1 So this bug appears in version 2.22 of binutils, but probably the one at fault is the gkrellm ebuild. I found some information here: http://slackblogs.blogspot.com.es/2012/06/strange-bug-caused-by-automake.html?showComment=1340383070109#c7954523246123430901 gkrellm builds fine for me with binutils-2.22.90 and gcc-4.5.3 Can you please post your output to the following command: pkg-config --libs gtk+-2.0 gthread-2.0 # pkg-config --libs gtk+-2.0 gthread-2.0 -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lglib-2.0 This is a bug in gkrellm's build system. Anything that uses symbols from libgmodule-2.0 should explicitly link to libgmodule-2.0. Gkrellm authors failed to do so, and instead relied on indirect dependencies pulled in by gtk+'s pkgconfig files to sort out the linking for them. Well, for a long time gnome developers have been tightening up their pkgconfig files and removing unnecessary dependencies. In particular, gmodule-2.0 was removed from gdk-pixbuf-2.0.pc's Required line in gdk-pixbuf-2.24, and from pango-*.pc's Required lines in pango-1.30. So for ~arch users, "pkg-config --libs gtk+-2.0 gthread-2.0" no longer gives you gmodule-2.0, and gkrellm fails to link. Created attachment 322541 [details, diff]
patch to fix linking error
This patch fixes the linking error.
I've also submitted it upstream via email to the primary author and to the lists.netservicesgroup.com mailing list.
Patch included in gkrellm-2.3.5-r2. |