I have a system with both kde 3.5 and 4.1 installed. When the kde use flag is enabled the configure script finds the wrong include path. This seems to be because AC_CHECK_FILES() is checking for a header (kapplication.h) which is present in both kde 3.5 and 4.1 and it finds the 4.1 version (/usr/include) before the 3.5 version (/usr/kde/3.5/include). The headers which are not being found in 4.1 'ksystemtray.h' and 'kpopupmenu.h' might be a better ones to test for. This problem still exists with twinkle 1.4.1. excepts for build log ... ./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-kde --with-ilbc --without-arts --with-zrtp --with-speex --with-x --enable-mitshm --with-xinerama --with-qt-dir=/usr/qt/3 --enable-mt --with-qt-libraries=/usr/qt/3/lib64 --disable-dependency-tracking --disable-debug --without-debug --without-arts --enable-gcc-hidden-visibility --enable-libsuffix=64 --with-extra-includes=/usr/kde/3.5/include --with-extra-libs=/usr/kde/3.5/lib64 --libdir=/usr/lib64 --build=x86_64-pc-linux-gnu ... checking for Qt... libraries /usr/qt/3/lib64, headers /usr/qt/3/include using -mt ... checking for KDE... libraries /usr/kde/3.5/lib64, headers /usr/include checking if UIC has KDE plugins available... yes checking for KDE paths... defaults ... x86_64-pc-linux-gnu-g++ -c -pipe -Wall -W -march=k8 -O2 -pipe -fno-strict-aliasing -D_REENTRANT -DQT_NO_STL -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I. -I.. -I../../src -I/usr/include/libxml2 -I/usr/include -I/usr/qt/3/include -I.ui/ -I. -I.moc/ -o .obj/twinklesystray.o twinklesystray.cpp In file included from twinklesystray.cpp:19: twinklesystray.h:25:25: error: ksystemtray.h: No such file or directory twinklesystray.h:26:24: error: kpopupmenu.h: No such file or directory twinklesystray.h:35: error: expected class-name before ‘{’ token twinklesystray.cpp: In constructor ‘t_twinkle_sys_tray::t_twinkle_sys_tray(QWidget*, const char*)’: twinklesystray.cpp:24: error: class ‘t_twinkle_sys_tray’ does not have any field named ‘KSystemTray’ make[3]: *** [.obj/twinklesystray.o] Error 1 ...
Created attachment 180564 [details] Complete build log
Created attachment 180622 [details, diff] Possible fix This convinces the configure script to pull in the correct headers and everything compiles correctly. Applies to 1.4 and 1.4.1.
added - thanks for the patch. I'm not sure its the best solution but its good enough for now. I've notified twinkle's developer of this bug.