Hi, after updating to qt-3.3.0 not only am I hit by the binary incompatibility problem (having to recompile kdelibs/addons) but my library dependencies for kde totally broke up! 1.) find /usr/ -name *.la -exec grep /var/tmp/portage '{}' \; returns a huge list of .la files that have references to var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-mt.la 2.) during emerge of kdelibs it sporadically says: [...] libtool: link: warning: library `/usr/qt/3/lib/libqt-mt.la' was moved. libtool: link: warning: library `/usr/lib/libGL.la' was moved. libtool: link: warning: library `/usr/lib/libGL.la' was moved. libtool: link: warning: library `/usr/qt/3/lib/libqt-mt.la' was moved. libtool: link: warning: library `/usr/lib/libGL.la' was moved. libtool: link: warning: library `/usr/qt/3/lib/libqt-mt.la' was moved. libtool: link: warning: library `/usr/lib/libGL.la' was moved. libtool: link: warning: library `/usr/lib/libGL.la' was moved. libtool: link: warning: library `/usr/lib/libGL.la' was moved. libtool: link: warning: library `/usr/qt/3/lib/libqt-mt.la' was moved. libtool: link: warning: library `/usr/lib/libGL.la' was moved. libtool: link: warning: library `/usr/lib/libGL.la' was moved. [...] 3.) emerge kdeaddons fails with: [...] /bin/sh ../../libtool --silent --mode=link --tag=CXX g++ -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -W -Wpointer-arith -Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -DNDEBUG -DNO_DEBUG -O2 -march=athlon-xp -O3 -pipe -fomit-frame-pointer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.2/lib -R /usr/kde/3.2/lib -R /usr/qt/3/lib -R /usr/X11R6/lib -o atlantikdesigner boardinfo.o designer.o editor.o main.o group.o -latlantikui -lkdegames -lkio libtool: link: cannot find the library `/var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-mt.la' make[4]: *** [atlantikdesigner] Fehler 1 make[4]: Leaving directory `/var/tmp/portage/kdeaddons-3.2.0/work/kdeaddons-3.2.0/atlantikdesigner/designer' make[3]: *** [all-recursive] Fehler 1 make[3]: Leaving directory `/var/tmp/portage/kdeaddons-3.2.0/work/kdeaddons-3.2.0/atlantikdesigner/designer' make[2]: *** [all-recursive] Fehler 1 make[2]: Leaving directory `/var/tmp/portage/kdeaddons-3.2.0/work/kdeaddons-3.2.0/atlantikdesigner' make[1]: *** [all-recursive] Fehler 1 make[1]: Leaving directory `/var/tmp/portage/kdeaddons-3.2.0/work/kdeaddons-3.2.0' make: *** [all] Fehler 2 !!! ERROR: kde-base/kdeaddons-3.2.0 failed. !!! Function kde_src_compile, Line 127, Exitcode 2 !!! died running emake, kde_src_compile:make ---- I re-emerged qt kdelib (and also libtool) a few times now but so far I just can't get rid of the /var/tmp references. :-/ Reproducible: Always Steps to Reproduce: 1. 2. 3. Portage 2.0.50-r1 (default-x86-1.4, gcc-3.3.2, glibc-2.3.3_pre20040207-r0, 2.6.1-gentoo-r1) ================================================================= System uname: 2.6.1-gentoo-r1 i686 AMD Athlon(tm) XP 3200+ Gentoo Base System version 1.4.3.13 distcc 2.12.1 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59 Automake: sys-devel/automake-1.8.2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache distcc sandbox" GENTOO_MIRRORS="ftp://sunsite.cnlab-switch.ch/mirror/gentoo/ http://ftp.easynet.nl/mirror/gentoo/ ftp://gentoo.ccccom.com ftp://ftp.easynet.nl/mirror/gentoo/ http://gentoo.inode.at/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow S3TC X aalib acpi acpi4linux alsa apache2 apm arts artswrappersuid avi berkdb bonobo cdr crypt cups dga directfb dvd dvdr encode esd ethereal evo fbcon fbdev foomaticdb freetype gb gdbm gif gnome gphoto2 gpm gtk gtk2 gtk2i gtkhtml hbci imagemagick imap imlib java javascript jikes joystick jpeg kde lcms ldap libg++ libwww linguas_de mad maildir mikmod mmx motif mozilla moznocompose moznoirc mpeg ncurses nls nptl oav oggvorbis opengl pam pcmcia pdflib perl pic png pnp ppds python qt quicktime readline samba sdl slang spell sse ssl svga tcpd tiff transcode truetype trusted type1 usb videos x86 xml xml2 xmms xv zlib"
same problem here: * in /usr/qt/3/lib/libqt-mt.la is the line: "libdir='/var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib'" * in /usr/qt/3/.qmake.cache some variables are set to "/var/tmp/portage/qt-3.3.0/image//usr/qt/3" * .la-files from kdelibs referencing to "/var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-mt.la" * kdebase fails to compile
Bug #41524 was marked a duplicate of this one while I was typing this : I had the problem recompiling arts. I changed the link in /usr/qt/3/lib/libqt-mt.la to show "libdir='/usr/qt/3/lib'" instead. I re-emerged arts and it worked. It's working its way through kdelibs now. Note. I would *really* not mind if developpers left unstable ebuilds in ~x86.
Please include x11-libs/qt-3.3.0 in the summary for easier lookup and increase the severity |: It seems that a rm of the faulty .la helps solving the problem. At least the messages inbetween the compile process do not pop up again. (So there has to be a fixed provided in qt - like the newest nvidia-glx, released today, does it (as libGL.la wasn't correct neither)). Can't tell about the whole build process of kdelibs by now. It takes time to compile.
The workaround in comment #2 did not help in my case. After editing usr/qt/3/lib/libqt-mt.la, emerge kdemultimedia still fails with /bin/sh ../../../libtool --silent --mode=compile --tag=CXX g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../arts/runtime -I../../../arts/gui/common -I/usr/kde/3.2/include/arts -I/usr/kde/3.2/include -I/usr/qt/3/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -DNDEBUG -DNO_DEBUG -O2 -march=pentium4 -O2 -pipe -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -c -o klabel_impl.lo `test -f 'klabel_impl.cpp' || echo './'`klabel_impl.cpp /bin/sh ../../../libtool --silent --mode=link --tag=CXX g++ -DNDEBUG -DNO_DEBUG -O2 -march=pentium4 -O2 -pipe -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -o libartsgui_kde.la -rpath /usr/kde/3.2/lib -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.2/lib -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined kwidget_impl.lo kbutton_impl.lo kpoti_impl.lo kpoti.lo kwidgetrepo.lo kartswidget.lo klineedit_impl.lo khbox_impl.lo kvbox_impl.lo kspinbox_impl.lo kcombobox_impl.lo kfader.lo kfader_impl.lo kgraph_impl.lo kgraph.lo kgraphline_impl.lo kframe_impl.lo klayoutbox_impl.lo kpopupbox_impl.lo klevelmeter_impl.lo klevelmeter_small.lo klevelmeter_linebars.lo klevelmeter_normalbars.lo klevelmeter_firebars.lo ktickmarks_impl.lo kvolumefader_impl.lo klabel_impl.lo -lkio -lkdecore -lkdeui ../../../arts/gui/common/libartsgui_idl.la grep: /var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-mt.la: No such file or directory /bin/sed: can't read /var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-mt.la: No such file or directory libtool: link: `/var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-mt.la' is not a valid libtool archive make[5]: *** [libartsgui_kde.la] Error 1 make[5]: Leaving directory `/var/tmp/portage/kdemultimedia-3.2.0/work/kdemultimedia-3.2.0/arts/gui/kde' make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory `/var/tmp/portage/kdemultimedia-3.2.0/work/kdemultimedia-3.2.0/arts/gui/kde' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/kdemultimedia-3.2.0/work/kdemultimedia-3.2.0/arts/gui' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/kdemultimedia-3.2.0/work/kdemultimedia-3.2.0/arts' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/kdemultimedia-3.2.0/work/kdemultimedia-3.2.0' make: *** [all] Error 2 !!! ERROR: kde-base/kdemultimedia-3.2.0 failed. !!! Function kde_src_compile, Line 127, Exitcode 2 !!! died running emake, kde_src_compile:make There are still references to /var/tmp/portage embedded in the binaries: # find /usr/qt/3/lib -type f -print0 | xargs -0 grep /var/tmp/portage Binary file /usr/qt/3/lib/libqui.so.1.0.0 matches Binary file /usr/qt/3/lib/libqt-mt.so.3.3.0 matches Seems I cannot continue until this is fixed (-> severity should be raised).
hi oliver, check if there are files from kdelibs which adopted the false reference and change them. in this case you have to recompile kdelibs first. make sure all depending packages get rid of the false reference.
i have the problem compiling the kdelibs against this qt version :/ emerging kdelibs: libtool: link: warning: `/usr/qt/3/lib/libqt-mt.la' seems to be moved libtool: link: warning: `/usr/qt/3/lib/libqt-mt.la' seems to be moved libtool: link: warning: `/usr/qt/3/lib/libqt-mt.la' seems to be moved libtool: link: warning: library `/usr/qt/3/lib/libqt-mt.la' was moved. seems to be the same problem but when i upgraded to the qt new version (wihout ipv6) i _could_ compile the kdelibs and kdeartwork , but now with qt compiled with ipv6 i cant
I've two machines, A which is working, B which has this problem. It seems the only difference is that while the working one contains ./configure -sm -thread -stl -system-libjpeg -verbose -largefile \ -qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \ -system-libpng -lpthread -xft -platform ${PLATFORM} -xplatform \ ${PLATFORM} -xrender -prefix ${D}${QTBASE} -plugindir ${QTBASE}/plugins \ -docdir ${QTBASE}/doc -translationdir ${QTBASE}/translations \ -datadir ${QTBASE} -sysconfdir ${QTBASE}/etc/settings -fast ${myconf} \ -libdir ${QTBASE}/lib -headerdir ${QTBASE}/include \ -bindir ${QTBASE}/bin -dlopen-opengl || die In the B's ebuild (which isn't working) last two lines are commented out and the "|| die" statement has been moved at the end of the "-datadir [...]" line. I hope this helps (it seemed relevant to me)
As requested I just added "x11-libs/qt-3.3.0" to the summary and raised the priority (well at least one step for now. But I feel tempted to call this one a blocker...).
Hello everyone. To sum up a possible workaround seems to be: 1.) in case you use nvidia: emerge sync; emerge -u nvidia-glx 2.) emerge qt 3.) edit /usr/qt/3/lib/libqt-mt.la and change libdir (last line) to libdir='/usr/qt/3/lib' 4.) emerge kdelibs 5.) emerge kdeaddons 6.) emerge kdemultimedia (this might be optional) 5.) check for remaining .la files with broken references. (e.g. # find /usr -name *.la -print -exec grep /var/tmp '{}' \; | less) at least this seems to work fine for me.
My apologies - I committed a fix for one bug and created another in the process. This bug should now be fixed within the ebuild - you can either re-emerge or change the .la file as noted in the comments.
*** Bug 41524 has been marked as a duplicate of this bug. ***
Everybody makes mistakes sometimes... I think you're doing a great job Caleb!
I'm trying to emerge kdenetwork: --8<--snip--8<-- grep: /var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-ml.la: No such file or directory /bin/sed: /var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-ml.la: No such file or directory libtool: link: `/var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/libqt-ml.la' is not a valid libtool archive --8<--snip--8<-- I emerged qt-3.3.0 that was updated today (Feb 14th) and KDEnetwork still refused to compile. Using the kludge (shown below) from the forums was the only way to get it to install (lots of 'seems to be moved warnings' though), so I'd suggest we still have a piece of the puzzle missing... --8<--snip--8<-- follow this steps to solve the problem: 1. # mkdir /var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/ 2. # cp /usr/qt/3/lib/* /var/tmp/portage/qt-3.3.0/image/usr/qt/3/lib/ now you can emerge any kde 3.2 package. good luck --8<--snip--8<-- Thanks!
Thanks for repairing the bug, but shouldn't the revised ebuild be called -r1 so that people who have the broken ebuild installed get their systems repaired instead of having to hunt through the bug data base? (Recall that the problems manifest themselves when trying to build *other* packages!)
This isn't fixed yet on my side :O
As I mentioned above, "I emerged qt-3.3.0 that was updated today (Feb 14th) and KDEnetwork still refused to compile." so the current fix isn't working for me either, only the hack, not the new ebuild.
http://forums.gentoo.org/viewtopic.php?p=867006#867006 My Kopete still doesn't work, might be related to this bug...?
I don't know a lot about this. But I think that qt-3.3.0.ebuild (v 1.17) is incorrect at line 83. Prefix is set to ${D}${QTBASE} (/var/tmp/portage/qt-3.3.0/image//usr/qt/3) and so that path is written to .qmake.cache and *.la. I changed "-prefix ${D}${QTBASE}" to "-prefix ${QTBASE}" and re-emerged qt. After it /usr/qt/3/.qmake.cache and /usr/qt/3/lib/libqt-mt.la contained correct paths. After qt I've already re-emerged arts and currently my (slow) machine is compiling kdelibs. Previusly emerging kdelibs failed after few minutes, but now it's been compiling over 3 hours, so I think my trick worked. Am I missing something here?
Just another thing: even _after_ (successfully) recompiling qt, kdelibs, kdebase, kdemultimedia and kdeaddons I am still missing the Plastik widget style... :-(
that's kinda off topic, isn't it?
I solved my Kopete library problem: rm -fR /usr/lib/kde3 (see forum link above for more info)
#18: Were you successful? The ${D} is even in older (working) ebuilds... As the qt recompiling task is quite time- and CPU-intensive, is there anybody who got it working again? (except of downgrading, I'm using ~x86 anyway)
In response to #22, I've gotten my install working with qt-3.3.0. I kept running into problems with the "libqt-mt.la is not a valid file" sorts of messages until I realized that the problem was caused by arts. I'd compiled it against the broken qt-3.3.0, but once I recompiled it against the new qt, I was able to get through the kdelibs-3.2.0 ebuild successfully.
#22: As I mentioned earlier, qt was build just fine without ${D} in prefix. Currently I've build arts-1.2.0 and kdelibs-3.2.0 with modified qt, and I haven't noticed any problems with them yet. Is there any reason why -prefix should be ${D}${QTBASE}? Just ${QTBASE} feels more correct to me...
It has to be ${D}${QTBASE} or Qt won't (in most cases) be able to build properly. When building using ${QTBASE} it will look for all of its tools in the wrong directory, meaning that you will be building the current Qt with the already installed Qt - something that will usually fail.
*** Bug 41765 has been marked as a duplicate of this bug. ***
I'm now considering changing it back to $QTBASE. It will bring back the original problem that we had before the fix, but that seems like the lesser of two evils. I guess it will force me to think of a different workaround.
Re-emerging the "new" qt ebuild, *reemerging arts* and kdelibs, kdebase work fine. It fixed the problem on most systems, Caleb. However I still think it should have been -r1 ;)
I just committed -r1 which reverts the behavior back to $QTBASE (amongst a few other minor bug fixes).
Ok, this should all be fixed now. First, an upgrade to 3.3.0-r1 is in order. Second, if you still have any problems, you'll need to re-emerge arts, kdelibs, kdebase, etc, until it propogates through. Alternatively, you can just find files in /usr/kde/3.2/lib/*.la that contain references to the wrong Qt installation directory, and alter them. This will save on compile/emerge time. Sorry for any problems this has caused.
*** Bug 41693 has been marked as a duplicate of this bug. ***