x11-libs/gtk+-2.24.5-r1 fails to build after a glib upgrade to 2.28.8. I just upgraded to glib to 2.28.8. and then tried to build gtk+. That results in: /usr/lib/libgio-2.0.la: No such file or directory mv -f .deps/gdkwindow.Tpo .deps/gdkwindow.Plo /bin/sh ../libtool --tag=CC --mode=link i686-pc-linux-gnu-gcc -DGDK_PIXBUF_DISABLE_DEPRECATED -march=pentium4 -pipe -O2 -Wall -version-info 2400:5:2400 -export-dynamic -rpath /usr/lib -export-symbols-regex "^[^_].*" -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -o libgdk-x11-2.0.la gdk.lo gdkapplaunchcontext.lo gdkcairo.lo gdkcolor.lo gdkcursor.lo gdkdisplay.lo gdkdisplaymanager.lo gdkdnd.lo gdkdraw.lo gdkevents.lo gdkfont.lo gdkgc.lo gdkglobals.lo gdkimage.lo gdkkeys.lo gdkkeyuni.lo gdkoffscreenwindow.lo gdkpango.lo gdkpixbuf-drawable.lo gdkpixbuf-render.lo gdkpixmap.lo gdkpolyreg-generic.lo gdkrectangle.lo gdkregion-generic.lo gdkrgb.lo gdkscreen.lo gdkselection.lo gdkvisual.lo gdkwindow.lo gdkwindowimpl.lo gdkenumtypes.lo gdkmarshalers.lo x11/libgdk-x11.la -pthread -lpangocairo-1.0 -lpango-1.0 -lgio-2.0 -lfontconfig -lXext -lXrender -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lgdk_pixbuf-2.0 -lm -lgobject-2.0 -lgmodule-2.0 -lpng14 -lgthread-2.0 -lrt -lglib-2.0 -lcairo -lX11 /bin/grep: /usr/lib/libgio-2.0.la: No such file or directory /usr/lib/portage/bin/ebuild-helpers/sed: can't read /usr/lib/libgio-2.0.la: No such file or directory libtool: link: `/usr/lib/libgio-2.0.la' is not a valid libtool archive make[4]: *** [libgdk-x11-2.0.la] Fehler 1 make[4]: Leaving directory `/var/tmp/portage/x11-libs/gtk+-2.24.5-r1/work/gtk+-2.24.5/gdk' make[3]: *** [all-recursive] Fehler 1 make[3]: Leaving directory `/var/tmp/portage/x11-libs/gtk+-2.24.5-r1/work/gtk+-2.24.5/gdk' make[2]: *** [all] Fehler 2 make[2]: Leaving directory `/var/tmp/portage/x11-libs/gtk+-2.24.5-r1/work/gtk+-2.24.5/gdk' make[1]: *** [all-recursive] Fehler 1 make[1]: Leaving directory `/var/tmp/portage/x11-libs/gtk+-2.24.5-r1/work/gtk+-2.24.5' make: *** [all] Fehler 2 emake failed Any hints? Best Zeno Reproducible: Always
Why does x11-libs/gtk+-2.24.5-r1 want /usr/lib/libgio-2.0.la? ~> locate libgio /usr/lib/libgio-2.0.a /usr/lib/libgio-2.0.so /usr/lib/libgio-2.0.so.0 /usr/lib/libgio-2.0.so.0.2800.8 /usr/lib/libgiomm-2.4.la /usr/lib/libgiomm-2.4.so /usr/lib/libgiomm-2.4.so.1 /usr/lib/libgiomm-2.4.so.1.3.0 Best Zeno
This is caused by: http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/glib/glib-2.28.8.ebuild?r1=1.15&r2=1.16 Probably "lafilefixer --justfixit" will help or, maybe, "revdep-rebuild" (and wait some hours until all broken stuff is rebuilt :-/) Will leave other gnome team members decide if they are ok with leaving glib ebuild as-is or revert ssuominen change
Maybe a good compromise would be to start dropping all possible .la files on each new revbump related with our (gnome) maintained packages and, then, ask people to fix their .la files when all new versions go to stable. Personally, I run "lafilefixer --justfixit" always when updating world... but I doubt this is commonly done by others :(
I appreciate your comment. In the mean time I just build from source. That worked just fine. Best Zeno
Zeno, the easiest way to fix this issue is to run "lafilefixer --justfixit" (emerge dev-util/lafilefixer if you don't have it). The problem is caused by a stale .la file somewhere in your /usr/lib that references libgio-2.0.la. Recent portage versions automatically fix newly installed .la files to not refer to other .la files; therefore, once you run lafilefixer, the issue is unlikely to reappear.
This is unfortunate, but as long as other devs will think it's ok to drop la files in the wrong order, this will result in breakage for users. I'm closing this as invalid as from an ebuild point of view, there is nothing to do, just lafilefixer or revdep-rebuild. Sorry for the inconvenience.