From kde-devel Fri May 31 15:21:18 2002 From: Luis Pedro Coelho Date: Fri, 31 May 2002 15:21:18 +0000 To: kde-devel Subject: Changes in libtool (or something related) caused my cvs build to fail X-MARC-Message: https://marc.info/?l=kde-devel&m=102285847407221 Hi, I keep both KDE HEAD and a stable 2.2 in my system. 2.2 is in /usr/ (where = RH=20 put it) and HEAD is in /opt/kde-cvs. Normally I choose which one to run by= =20 adjusting the path to include (or not) /opt/kde-cvs/bin before /usr/bin. Th= e=20 kde libs are in /opt/kde-cvs/lib and /usr/lib. Up to a week ago, everything worked fine. Now, I cannot get HEAD to compile= =2E=20 The problem is that basically that after every object file has been built,= =20 linking fails because ld looks at the libs in /usr/lib and not the ones in= =20 /opt/kde-cvs/lib. I pass the lib paths to configure using "--with-kde-dir=3D/opt/kde-cvs/lib"= and=20 "--with-qt-dir=3D/opt/kde-cvs/src/qt-copy". This makes libtool pass to ld=20 something like "-L/opt/kde-cvs/lib" and "-R /opt/kde-cvs/lib". The problem = is=20 that these commands must come before "-L/usr/lib" and "-R /opt/kde-cvs/lib"= =2E=20 Up to a week ago they were, right now they are not. =46or example, here is the output of "make" in kdebase/konsole/konsole (aft= er=20 building the objects): /bin/sh ../../libtool --silent --mode=3Dlink --tag=3DCXX g++ -Wnon-virtual= =2Ddtor=20 =2DWno-long-long -Wbad-function-cast -Wundef -Wall -pedantic -W -Wpointer-a= rith=20 =2DWmissing-prototypes -Wwrite-strings -ansi -D_XOPEN_SOURCE=3D500 -D_BSD_S= OURCE=20 =2DWcast-align -Wconversion -fno-builtin -g3 -fno-exceptions -fno-check-new= =20 =2DDQT_CLEAN_NAMESPACE -DQT_NO_COMPAT -DQT_NO_ASCII_CAST -o=20 libkonsolepart.la.closure libkonsolepart_la_closure.lo -L/usr/X11R6/lib=20 =2DL/opt/kde-cvs/src/qt-copy/lib -L/usr/lib -L/opt/kde-cvs/lib -avoid-vers= ion=20 =2Dmodule -no-undefined -R /usr/lib -R /opt/kde-cvs/src/qt-copy/lib -R=20 /usr/X11R6/lib -R /opt/kde-cvs/lib TEPty.lo BlockArray.lo konsole_part.lo= =20 schema.lo session.lo TEWidget.lo TEmuVt102.lo TEScreen.lo konsole_wcwidth.l= o=20 TEmulation.lo TEHistory.lo keytrans.lo konsoleiface_skel.lo=20 sessioniface_skel.lo libkonsolepart_la_meta_unload.lo -lkparts -lutil -lXt= st /usr/bin/ld: cannot find -lqt collect2: ld returned 1 exit status if you take away the silent from libtool, here is what you get: g++ -Wnon-virtual-dtor -Wno-long-long -Wbad-function-cast -Wundef -Wall=20 =2Dpedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -ansi=20 =2DD_XOPEN_SOURCE=3D500 -D_BSD_SOURCE -Wcast-align -Wconversion -fno-builti= n -g3=20 =2Dfno-exceptions -fno-check-new -DQT_CLEAN_NAMESPACE -DQT_NO_COMPAT=20 =2DDQT_NO_ASCII_CAST -o libkonsolepart.la.closure=20 =2Elibs/libkonsolepart_la_closure.o .libs/TEPty.o .libs/BlockArray.o=20 =2Elibs/konsole_part.o .libs/schema.o .libs/session.o .libs/TEWidget.o=20 =2Elibs/TEmuVt102.o .libs/TEScreen.o .libs/konsole_wcwidth.o .libs/TEmulati= on.o=20 =2Elibs/TEHistory.o .libs/keytrans.o .libs/konsoleiface_skel.o=20 =2Elibs/sessioniface_skel.o .libs/libkonsolepart_la_meta_unload.o =20 =2DL/usr/X11R6/lib -L/opt/kde-cvs/src/qt-copy/lib -L/usr/lib -L/opt/kde-cvs= /lib=20 /usr/lib/libkparts.so -L/usr/lib/qt-2.3.1/lib=20 =2DL/usr/lib/gcc-lib/i386-redhat-linux/2.96=20 =2DL/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../.. /usr/lib/libkfile.so=20 /usr/lib/libksycoca.so /usr/lib/libkio.so /usr/lib/libkdesu.so=20 /usr/lib/libkssl.so /usr/lib/libkdeui.so /usr/lib/libkdecore.so -ldl=20 /usr/lib/libDCOP.so -lqt -lpng /usr/lib/libjpeg.so -lXext -lX11 -lSM -lICE= =20 =2Dlresolv -lz /usr/lib/libfam.so -lstdc++ -lm -lc -lgcc -lutil -lXtst=20 =2DWl,--rpath -Wl,/usr/lib -Wl,--rpath -Wl,/opt/kde-cvs/src/qt-copy/lib=20 =2DWl,--rpath -Wl,/usr/X11R6/lib -Wl,--rpath -Wl,/opt/kde-cvs/lib As you can see, you have "-L/usr/lib" before "-L/opt/kde-cvs/lib". Regards, =2D-=20 Luis Pedro Coelho. Check out my game of Hearts, a card game, for KDE at: http://hearts.sourceforge.net/ >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<