View previous topic :: View next topic |
Author |
Message |
jasn Guru
Joined: 05 May 2005 Posts: 439 Location: Maryland, US
|
Posted: Fri Feb 15, 2008 12:17 pm Post subject: [Solved] Upgrade then Downgrade glib; Now Compile Errors |
|
|
Hi All,
I have two Gentoo installs here. On one I had upgraded to glib-2.15.4 from the desktop-effects overlay, and that was creating a problem for me with regards to re-compiling gnome-vfs-2.20.1-r1. Downgrading to glib-2.14.6 solved that problem, but created a new one. I need to rebuild something on my system that was affected by the upgrade and then downgrade of glib. Another forum user pointed out to me the necessity of rebuilding dbus-glib to solve unresolved symbols in /usr/lib/libdbus-glib-1.so, which I did, and that fixed one problem caused by this upgrade/downgrade. However, the problem I have now is with an undefined reference to `g_assertion_message', that is cropping up on several unrelated compiles. Here are the relevant sections from emerging several packages which are affected;
gnome-vfs-2.20.1-r1
Code: | i686-pc-linux-gnu-gcc -std=gnu99 -march=prescott -O2 -pipe -fomit-frame-pointer -o .libs/gnome-vfs-daemon dbus-utils.o vfs-daemon.o daemon-connection.o -pthread -L/usr/lib ../libgnomevfs/.libs/libgnomevfsdaemon-2.a /usr/lib/libhal-storage.so /usr/lib/libhal.so /usr/lib/libusb.so /var/tmp/portage/gnome-base/gnome-vfs-2.20.1-r1/work/gnome-vfs-2.20.1/libgnomevfs/.libs/libgnomevfs-2.so ../libgnomevfs/.libs/libgnomevfs-2.so /usr/lib/libgconf-2.so /usr/lib/libORBit-2.so /usr/lib/libgmodule-2.0.so /usr/lib/libgthread-2.0.so -lpthread /usr/lib/libxml2.so -lm /usr/lib/libdbus-glib-1.so -lnsl /usr/lib/libgobject-2.0.so /usr/lib/libgnutls.so -lz /usr/lib/libtasn1.so /usr/lib/libgcrypt.so /usr/lib/libgpg-error.so /usr/lib/libavahi-glib.so /usr/lib/libglib-2.0.so /usr/lib/libavahi-client.so /usr/lib/libdbus-1.so /usr/lib/libavahi-common.so -ldl -lresolv -lutil -lrt
/usr/lib/libavahi-glib.so: undefined reference to `g_assertion_message_expr'
collect2: ld returned 1 exit status
make[2]: *** [gnome-vfs-daemon] Error 1
make[2]: Leaving directory `/var/tmp/portage/gnome-base/gnome-vfs-2.20.1-r1/work/gnome-vfs-2.20.1/daemon'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/gnome-base/gnome-vfs-2.20.1-r1/work/gnome-vfs-2.20.1'
make: *** [all] Error 2 |
dev-cpp/libgnomeuimm-2.20.2
Code: | i686-pc-linux-gnu-g++ -march=prescott -O2 -pipe -fomit-frame-pointer -o generate_extra_defs generate_defs_libgnomeui.o -pthread /usr/lib/libgnomeui-2.so -L/usr/lib /usr/lib/libgnome-keyring.so /usr/lib/libjpeg.so /usr/lib/libbonoboui-2.so /usr/lib/libgnomemm-2.6.so /usr/lib/libgnome-2.so /usr/lib/libesd.so /usr/lib/libasound.so /usr/lib/libaudiofile.so /usr/lib/libpopt.so /usr/lib/libbonobo-2.so /usr/lib/libbonobo-activation.so /usr/lib/libORBitCosNaming-2.so /usr/lib/libgnomecanvasmm-2.6.so /usr/lib/libgnomecanvas-2.so /usr/lib/libgailutil.so /usr/lib/libart_lgpl_2.so /usr/lib/libgconfmm-2.6.so /usr/lib/libglademm-2.4.so /usr/lib/libgtkmm-2.4.so /usr/lib/libglade-2.0.so /usr/lib/libgdkmm-2.4.so /usr/lib/libatkmm-1.6.so /usr/lib/libpangomm-1.4.so /usr/lib/libcairomm-1.0.so /usr/lib/libgtk-x11-2.0.so /usr/lib/libgdk-x11-2.0.so /usr/lib/libatk-1.0.so /usr/lib/libgdk_pixbuf-2.0.so /usr/lib/libpangocairo-1.0.so /usr/lib/libpangoft2-1.0.so /usr/lib/libpango-1.0.so /usr/lib/libcairo.so /usr/lib/libfontconfig.so /usr/lib/libfreetype.so /usr/lib/libdirectfb.so /usr/lib/libfusion.so /usr/lib/libdirect.so /usr/lib/libglitz-glx.so /usr/lib/libglitz.so /usr/lib/libGL.so /usr/lib/libSM.so /usr/lib/libICE.so /usr/lib/libXmu.so /usr/lib/libXt.so /usr/lib/libXext.so /usr/lib/libXi.so /usr/lib/libpng12.so /usr/lib/libxcb-render-util.so /usr/lib/libxcb-render.so /usr/lib/libXrender.so /usr/lib/libX11.so /usr/lib/libxcb-xlib.so /usr/lib/libxcb.so /usr/lib/libXau.so /usr/lib/libXdmcp.so /usr/lib/libgnomevfsmm-2.6.so /usr/lib/libglibmm-2.4.so /usr/lib/libgnomevfs-2.so /usr/lib/libxml2.so -lm /usr/lib/libdbus-glib-1.so -lnsl /usr/lib/libdbus-1.so /usr/lib/libgnutls.so -lz /usr/lib/libtasn1.so /usr/lib/libgcrypt.so /usr/lib/libgpg-error.so -lresolv -lutil /usr/lib/libgconf-2.so /usr/lib/libORBit-2.so /usr/lib/libgthread-2.0.so -lpthread -lrt /usr/lib/libglibmm_generate_extra_defs-2.4.so /usr/lib/libsigc-2.0.so /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so /usr/lib/libglib-2.0.so -ldl
/usr/lib/libgconfmm-2.6.so: undefined reference to `g_assertion_message'
collect2: ld returned 1 exit status
make[2]: *** [generate_extra_defs] Error 1
make[2]: Leaving directory `/var/tmp/portage/dev-cpp/libgnomeuimm-2.20.2/work/libgnomeuimm-2.20.2/tools/extra_defs_gen'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/dev-cpp/libgnomeuimm-2.20.2/work/libgnomeuimm-2.20.2/tools'
make: *** [all-recursive] Error 1 |
truecrypt-5.0a
Code: | i686-pc-linux-gnu-g++ -o truecrypt -Wl,--gc-sections -Wl,--hash-style=sysv Application.o CommandLineInterface.o FavoriteVolume.o FatalErrorHandler.o GraphicUserInterface.o LanguageStrings.o Hotkey.o StringFormatter.o TextUserInterface.o UserInterface.o UserPreferences.o VolumeHistory.o Xml.o Unix/Main.o Forms/AboutDialog.o Forms/ChangePasswordDialog.o Forms/DeviceSelectionDialog.o Forms/EncryptionOptionsWizardPage.o Forms/FavoriteVolumesDialog.o Forms/Forms.o Forms/InfoWizardPage.o Forms/KeyfilesDialog.o Forms/KeyfilesPanel.o Forms/LegalNoticesDialog.o Forms/MainFrame.o Forms/MountOptionsDialog.o Forms/PreferencesDialog.o Forms/ProgressWizardPage.o Forms/SelectDirectoryWizardPage.o Forms/SingleChoiceWizardPage.o Forms/VolumePasswordPanel.o Forms/VolumePropertiesDialog.o Forms/VolumeCreationIntroWizardPage.o Forms/VolumeCreationProgressWizardPage.o Forms/VolumeCreationWizard.o Forms/VolumeFormatOptionsWizardPage.o Forms/VolumeLocationWizardPage.o Forms/VolumePasswordWizardPage.o Forms/VolumeSizeWizardPage.o Forms/WizardFrame.o Resources.o /var/tmp/portage/app-crypt/truecrypt-5.0a/work/truecrypt-5.0a-source/Core/Core.a /var/tmp/portage/app-crypt/truecrypt-5.0a/work/truecrypt-5.0a-source/Driver/Fuse/Driver.a /var/tmp/portage/app-crypt/truecrypt-5.0a/work/truecrypt-5.0a-source/Volume/Volume.a /var/tmp/portage/app-crypt/truecrypt-5.0a/work/truecrypt-5.0a-source/Platform/Platform.a -pthread -lfuse -lrt -ldl -pthread -lwx_gtk2u_adv-2.8 -lwx_gtk2u_core-2.8 -lwx_baseu-2.8
/usr/lib/gcc/i686-pc-linux-gnu/4.2.2/../../../libwx_gtk2u_adv-2.8.so: undefined reference to `g_assertion_message_expr'
collect2: ld returned 1 exit status
make[1]: *** [truecrypt] Error 1
make[1]: Leaving directory `/var/tmp/portage/app-crypt/truecrypt-5.0a/work/truecrypt-5.0a-source/Main'
make: *** [all] Error 2 |
I've tried rebuilding pango atk glib glibmm dbus-glib gtk+ glibc gcc and sandbox, all without fixing this problem. It strikes me that the problem is not with these packages, as much as it should be with glib in some fashion. I should point out that my other Gentoo install here, which never upgraded to the desktop-effects glib-2.15.4, has been able to emerge all three of the packages above, without issue. Anyone have a suggestion on what I can try to rebuild against the downgraded glib, that may fix this?
Last edited by jasn on Sat Feb 16, 2008 7:31 pm; edited 1 time in total |
|
Back to top |
|
|
Wormo Retired Dev
Joined: 29 Nov 2004 Posts: 526 Location: SB County California
|
Posted: Fri Feb 15, 2008 11:43 pm Post subject: |
|
|
Have you tried running revdep-rebuild to recompile anything affected by your library changes? |
|
Back to top |
|
|
jasn Guru
Joined: 05 May 2005 Posts: 439 Location: Maryland, US
|
Posted: Fri Feb 15, 2008 11:57 pm Post subject: |
|
|
Wormo wrote: | Have you tried running revdep-rebuild to recompile anything affected by your library changes? |
Yes. I've run it several times and it finds nothing to rebuild. I've tried rebuilding the toolchain with emwrap.sh and that didn't work, and at this point, unless someone has another suggestion, I'm looking at simply rebuilding my entire system to try and fix this.
Thanks. |
|
Back to top |
|
|
Wormo Retired Dev
Joined: 29 Nov 2004 Posts: 526 Location: SB County California
|
Posted: Sat Feb 16, 2008 1:44 am Post subject: |
|
|
Did you try passing '--library /usr/lib/libglib.*' to revdep-rebuild, since you know that the breakage is related to glib? |
|
Back to top |
|
|
jasn Guru
Joined: 05 May 2005 Posts: 439 Location: Maryland, US
|
Posted: Sat Feb 16, 2008 2:12 am Post subject: |
|
|
That's a good suggestion that I hadn't tried. However trying it now didn't indicate anything wrong.
Code: | revdep-rebuild --pretend --library /usr/lib/libglib.*
WARNING
WARNING *** This is a rewritten version of revdep-rebuild ***
WARNING
WARNING
WARNING Please report any bugs to http://bugs.gentoo.org
WARNING
WARNING In the bug report please include the following information:
WARNING emerge --info
WARNING A copy of the output from the revdep-rebuild command
WARNING A copy of the .revdep-rebuild* files as an attachment
WARNING
WARNING If the bug is severe, the previous version of revdep-rebuild is located
WARNING at: /usr/lib/gentoolkit/bin/revdep-rebuild
WARNING
WARNING
WARNING *** This is a rewritten version of revdep-rebuild ***
WARNING
* Configuring search environment for revdep-rebuild
* Checking reverse dependencies
* Packages containing binaries and libraries using /usr/lib/libglib.a
* will be emerged.
* Collecting system binaries and libraries
* Generated new /root/.revdep-rebuild_libglib.a.1_files
* Checking dynamic linking
[ 100% ]
* There are no dynamic links to /usr/lib/libglib.a... All done. |
(I also tried the old revdep-rebuild too, just in case..) Is there some way to rebuild everything related to glib? Would it be as simple as emerge -s glib and anything that's installed, just rebuild? |
|
Back to top |
|
|
jasn Guru
Joined: 05 May 2005 Posts: 439 Location: Maryland, US
|
Posted: Sat Feb 16, 2008 7:30 pm Post subject: |
|
|
I'm an idiot.. (again unfortunately..)
On a lark and looking at the libraries mentioned above that contain the undefined references, I decided to try the following;
1) re-emerge the owning package of libavahi-glib.so, which is avahi. Now gnome-vfs emerges and compiles clean.
2) re-emerge the owning package of libgconfmm-2.6.so, which is gconfmm. Now libgnomeuimm emerges and compiles clean.
3) re-emerge the owning package of libwx_gtk2u_adv-2.8.so, which is wxGTK. Now truecrypt emerges and compiles clean.
It wasn't the upgraded glib, but a matter of finding the packages that I must have built against the upgraded glib. Nice that Gentoo was trying to tell me exactly which ones, and embarrassing that I was thinking it was much more complicated than that. My only hope is that I didn't have too big of an audience watching me fumble around on this one.. (now where did I put that fig leaf..?) |
|
Back to top |
|
|
Wormo Retired Dev
Joined: 29 Nov 2004 Posts: 526 Location: SB County California
|
Posted: Sat Feb 16, 2008 8:25 pm Post subject: |
|
|
Did you notice that revdep-rebuild was looking for packages built against libglib.a, but not libglib.so?? If it had worked the way I'd expect it to, then it would have found things like avahi and wxGTK that had been built against the other glib. Either there is something wrong with the way I told you to call it or it's a revdep-rebuild bug.
Either way there's no need for you to be embarrassed, ideally calling revdep-rebuild without args like you did in the first place would have handled the problem (getting revdep-rebuild to be smart enough to work the way we would like is of course easier said than done). |
|
Back to top |
|
|
OldJoe n00b
Joined: 13 Jun 2007 Posts: 7
|
Posted: Mon Mar 17, 2008 2:49 pm Post subject: |
|
|
Hey folks,
I have a similar problem. I'm currently installing (literally) gentoo on my new notebook and since I have a 64bit CPU I use the amd64 version. While installing Gnome errors like yours
Code: |
libSOMETHINGSOMETHING.so: undefined reference (g_assertion_message)
libSOMETHINGSOMETHING.so: undefined reference (g_assertion_message_expr)
|
This happens every 2nd or 3rd package then I have to re-emerge SOMETHINGSOMETHING with
Code: |
emerge --oneshot SOMETHINGSOMETHING
|
which works sometimes and sometime SOMETHINGSOMETHING produces the same error as the original package so I recursively dive down the library stack. SOMETHINGSOMETHING was almost everything up to now. bonobo, pango, gnome-vfs, gnome-desktop, gtk+, .... the only thing in common was gnome.
As the XServer does not yet work I cannot post any logs but I will post them asap.
Anyone has a clue where this error comes from?
edit: I'll create a new topic with my logs, this is a more rhetorical question/remark here. |
|
Back to top |
|
|
dunkirk Tux's lil' helper
Joined: 15 Mar 2005 Posts: 88
|
Posted: Sat Jun 07, 2008 8:19 pm Post subject: |
|
|
In my case, I had allowed my (old) stable system to emerge an unstable version of glib to support vinagre (a Gnome-based VNC viewer). This had allowed several packages to get installed that depended on it until it hit one that actually threw an error with the new layout. Based on what I read here, I did the following:
for i in `equery d glib|awk '{print $1}'`; do emerge -1 =$i; done
I was hitting this problem on a new install (I've been bringing over my old list of packages in /var/lib/portage/world and the exceptions in /etc/portage/*), so the packages I had to re-emerge was fairly small, but it cleared the problem, and Gnome is now emerging. _________________ Acts 17:28, "For in Him we live, and move, and have our being." |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|