the kde eclass is causing funky stuff to happen when I compile noteedit with both kde 3.1 and 3.2 installed /etc/env.d $ echo $PATH /opt/povray/bin:/opt/mozilla/bin:/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/opt/bin:/usr/afsws/bin:/etc/afs/afsws:/usr/afs/bin:/usr/athena/sbin:/usr/i686-pc-linux-gnu/gcc-bin/3.3:/opt/intel/compiler70/ia32/bin:/opt/Acrobat5:/usr/X11R6/bin:/opt/blackdown-jdk-1.4.1/bin:/opt/blackdown-jdk-1.4.1/jre/bin:/usr/qt/3/bin:/usr/kde/3.2/sbin:/usr/kde/3.2/bin:/usr/kde/3.1/sbin:/usr/kde/3.1/bin:/usr/qt/2/bin:/usr/local/shake/bin:/opt/att/bin:/opt/tmake/bin /etc/env.d $ cat /etc/ld.so.conf # ld.so.conf autogenerated by env-update; make all changes to # contents of /etc/env.d directory /opt/blackdown-jdk-1.4.1/jre/lib/i386/ /opt/blackdown-jdk-1.4.1/jre/lib/i386/native_threads/ /opt/intel/compiler70/ia32/lib /usr/X11R6/lib /usr/athena/lib /usr/games/lib /usr/kde/3.1/lib /usr/kde/3.2/lib /usr/lib/MozillaFirefox /usr/lib/fltk-1.1 /usr/lib/gcc-lib/i686-pc-linux-gnu/2.95.3 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2 /usr/lib/mozilla /usr/lib/opengl/nvidia/lib /usr/lib/speech-tools/lib /usr/local/lib /usr/qt/2/lib /usr/qt/3/lib $ ldd /usr/bin/noteedit | grep kde libartsc.so.0 => /usr/kde/3.1/lib/libartsc.so.0 (0x402f2000) libartsmidi.so.0 => /usr/kde/3.1/lib/libartsmidi.so.0 (0x402f8000) libartsmidi_idl.so.0 => /usr/kde/3.1/lib/libartsmidi_idl.so.0 (0x4032d000) libartsflow.so.1 => /usr/kde/3.1/lib/libartsflow.so.1 (0x40378000) libartsflow_idl.so.1 => /usr/kde/3.1/lib/libartsflow_idl.so.1 (0x404c3000) libmcop.so.1 => /usr/kde/3.1/lib/libmcop.so.1 (0x40651000) libkdeprint.so.4 => /usr/kde/3.1/lib/libkdeprint.so.4 (0x4092a000) libkparts.so.2 => /usr/kde/3.1/lib/libkparts.so.2 (0x409ea000) libkio.so.4 => /usr/kde/3.1/lib/libkio.so.4 (0x40a29000) libkdeui.so.4 => /usr/kde/3.1/lib/libkdeui.so.4 (0x40cf4000) libkdesu.so.4 => /usr/kde/3.1/lib/libkdesu.so.4 (0x40f6c000) libkdecore.so.4 => /usr/kde/3.1/lib/libkdecore.so.4 (0x40f87000) libDCOP.so.4 => /usr/kde/3.1/lib/libDCOP.so.4 (0x4112b000) libkdefx.so.4 => /usr/kde/3.1/lib/libkdefx.so.4 (0x4118a000) noteedit should've been compiled/linked against 3.2, but it's not... Snips from noteedit's compilation showing that it was compiled against 3.2: g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/kde/3.2/include -I/usr/qt/3/include -I/u sr/X11R6/include -I/usr/include -DQT_THREAD_SUPPORT -D_REENTRANT -DNDEBUG -DNO_D EBUG -O2 -march=pentium3 -mcpu=pentium3 -O2 -pipe -fomit-frame-pointer -falign-f unctions=16 -falign-jumps=4 -falign-loops=8 -fno-exceptions -fno-check-new -Wp,- MD,.deps/voiceDia.pp -c voiceDia.cc -fPIC -DPIC -o .libs/voiceDia.o g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/kde/3.2/include -I/usr/qt/3/include -I/u sr/X11R6/include -I/usr/include -DQT_THREAD_SUPPORT -D_REENTRANT -DNDEBUG -DNO_D EBUG -O2 -march=pentium3 -mcpu=pentium3 -O2 -pipe -fomit-frame-pointer -falign-f unctions=16 -falign-jumps=4 -falign-loops=8 -fno-exceptions -fno-check-new -Wp,- MD,.deps/volume.pp -c volume.cc -fPIC -DPIC -o .libs/volume.o but when it's linked, it /usr/kde/3.1/lib is thrown in there: g++ -DNDEBUG -DNO_DEBUG -O2 -march=pentium3 -mcpu=pentium3 -O2 -pipe -fomit-fram e-pointer -falign-functions=16 -falign-jumps=4 -falign-loops=8 -fno-exceptions - fno-check-new -o .libs/noteedit main.o ./.libs/libnoteedit.so -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.2/lib -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2 -L /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/../../../../i686-pc-linux-gnu/lib -L/us r/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/../../.. -L/usr/i686-pc-linux-gnu/bin -L/u sr/i686-pc-linux-gnu/lib -L/usr/lib/gcc-lib/i686-pc-linux-gnu/../../../i686-pc-l inux-gnu/lib -L/usr/lib/mysql -L/usr/lib /usr/lib/libtse3.so -L/usr/kde/3.1/lib /usr/kde/3.1/lib/libartsc.so /usr/kde/3.1/lib/libartsmidi.so /usr/kde/3.1/lib/li bartsmidi_idl.so /usr/kde/3.1/lib/libartsflow.so /usr/kde/3.1/lib/libartsflow_id l.so /usr/lib/libaudiofile.so /usr/lib/libasound.so /usr/kde/3.1/lib/libmcop.so -lstdc++ /usr/lib/libvorbisfile.so /usr/lib/libvorbisenc.so /usr/lib/libvorbis.s o /usr/lib/libogg.so /usr/lib/libmad.so /usr/lib/libxine.so /usr/kde/3.2/lib/lib kdeprint.so /usr/kde/3.2/lib/libkparts.so /usr/kde/3.2/lib/libkio.so /usr/kde/3. 2/lib/libkdeui.so /usr/kde/3.2/lib/libkdesu.so /usr/kde/3.2/lib/libkdecore.so /u sr/kde/3.2/lib/libDCOP.so -lresolv /usr/lib/libart_lgpl_2.so /usr/kde/3.2/lib/li bkdefx.so /usr/qt/3/lib/libqt-mt.so -laudio -lXt /usr/lib/libmng.so /usr/lib/lib jpeg.so -lXi -lXrandr -lXcursor -lXinerama -lXft /usr/lib/libfontconfig.so /usr/ lib/libfreetype.so /usr/lib/libexpat.so -ldl -lpng -lXext -lX11 -lSM -lICE -lpth read -lXrender -lutil /usr/lib/libfam.so -lrpcsvc -lz /usr/lib/gcc-lib/i686-pc-l inux-gnu/3.3.2/libstdc++.so -lm -lc -lgcc_s -Wl,--rpath -Wl,/usr/kde/3.1/lib -Wl ,--rpath -Wl,/usr/kde/3.2/lib -Wl,--rpath -Wl,/usr/qt/3/lib -Wl,--rpath -Wl,/usr /lib/gcc-lib/i686-pc-linux-gnu/3.3.2 -Wl,--rpath -Wl,/usr/X11R6/lib Because of this, we get a binary compiled against 3.2, but linked against 3.1: $ noteedit noteedit: relocation error: /usr/lib/libnoteedit.so.1: undefined symbol: _ZN11KMainWindow4showEv
The eclass changed a lot since then, and we never had problems with recent versions... so I'm closing this one now.