Hi, not sure wether this is really a fault in cmake, or just some changed behaviour which needs changes in kdelibs cmake code.
Anyway, the latest cvs version from cmake (update 2 hours ago) produces the following entries in KDELibsDependencies.cmake. This file is generated using the export_library_dependecies() command: SET(kdecore_LIB_DEPENDS "general;/home/andreas/qt-copy/lib/libQtCore.so;general;-lpthread;general;/home/andreas/qt-copy/lib/libQtNetwork.so;general;/home/andreas/qt-copy/lib/libQtDBus.so;general;/home/andreas/qt-copy/lib/libQtXml.so;general;libz.so;general;libbz2.so;general;resolv;") SET(kdeui_LIB_DEPENDS "general;/home/andreas/qt-copy/lib/libQtSvg.so;general;/home/andreas/qt-copy/lib/libQtCore.so;general;-lpthread;general;kdecore;general;-lSM;general;libICE.so;general;libX11.so;general;libXext.so;general;libXft.so;general;libXau.so;general;libXdmcp.so;general;libXpm.so;general;/home/andreas/qt-copy/lib/libQtGui.so;general;/home/andreas/qt-copy/lib/libQtXml.so;general;libXtst.so;general;libXcursor.so;general;libXfixes.so;") SET(kio_LIB_DEPENDS "general;/home/andreas/qt-copy/lib/libQtCore.so;general;-lpthread;general;kdecore;general;kdeui;general;libz.so;general;/home/andreas/kde4/lib/libstreamanalyzer.so;general;/home/andreas/kde4/lib/libstreams.so;general;/home/andreas/qt-copy/lib/libQtCore.so;general;-lpthread;general;kdecore;general;solid;general;libfam.so;general;libacl.so;general;libattr.so;general;libXrender.so;") ... The problem with this is that those lines are literally taken and given to target_link_libraries. Which fails as those lines contain an entry "general". The linker line then has -lgeneral, but at least in the debian repository there's no such file. Also I noticed that the linker line doesn't contain an option that gives gcc the kde4 library dir to search for kde libs. This is another thing which broke things for me here, i.e. ld complains that -lsolid cannot be found (as you can see below there's a solid entry in the kio-line). The linker call is: /usr/lib/ccache/c++ -fPIC -pipe -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common -Woverloaded-virtual -fvisibility=hidden -fvisibility-inlines-hidden -O2 -g -Wl,--enable-new-dtags -Wl,--fatal-warnings -Wl,--no-undefined -lc -shared -Wl,-soname,libkresources.so.4 -o ../lib/libkresources.so.4.1.0 "CMakeFiles/kresources.dir/kresources_automoc.cpp.o" "CMakeFiles/kresources.dir/resource.cpp.o" "CMakeFiles/kresources.dir/factory.cpp.o" "CMakeFiles/kresources.dir/managerimpl.cpp.o" "CMakeFiles/kresources.dir/configwidget.cpp.o" "CMakeFiles/kresources.dir/configdialog.cpp.o" "CMakeFiles/kresources.dir/selectdialog.cpp.o" "CMakeFiles/kresources.dir/configpage.cpp.o" "CMakeFiles/kresources.dir/idmapper.cpp.o" "CMakeFiles/kresources.dir/kresourcesmanageradaptor.cpp.o" /home/andreas/qt-copy/lib/libQtCore.so -lpthread -lkdecore -lkdeui -lz /home/andreas/kde4/lib/libstreamanalyzer.so /home/andreas/kde4/lib/libstreams.so /home/andreas/qt-copy/lib/libQtCore.so -lpthread -lkdecore -lsolid -lfam -lacl -lattr -lXrender /home/andreas/kde4/lib/libkio.so /home/andreas/qt-copy/lib/libQtSvg.so -lSM -lICE -lX11 -lXext -lXft -lXau -lXdmcp -lXpm -lXtst -lXcursor -lXfixes /home/andreas/qt-copy/lib/libQtNetwork.so -lbz2 -lresolv /home/andreas/qt-copy/lib/libQtCore.so -lpthread /home/andreas/qt-copy/lib/libQtDBus.so /home/andreas/qt-copy/lib/libQtXml.so /home/andreas/qt-copy/lib/libQtGui.so -Wl,-rpath,/home/andreas/qt-copy/lib:/home/andreas/kde4/lib Andreas PS: For comparison, this is the content thats generated from cmake 2.4.7 (or cmake cvs from two or three weeks ago, when I last updated): SET(kdecore_LIB_DEPENDS "/home/andreas/qt-copy/lib/libQtCore.so;-lpthread;/home/andreas/qt-copy/lib/libQtNetwork.so;/home/andreas/qt-copy/lib/libQtDBus.so;/home/andreas/qt-copy/lib/libQtXml.so;libz.so;libbz2.so;resolv;") SET(kdeui_LIB_DEPENDS "/home/andreas/qt-copy/lib/libQtSvg.so;/home/andreas/qt-copy/lib/libQtCore.so;-lpthread;kdecore;-lSM;libICE.so;libX11.so;libXext.so;libXft.so;libXau.so;libXdmcp.so;libXpm.so;/home/andreas/qt-copy/lib/libQtGui.so;/home/andreas/qt-copy/lib/libQtXml.so;libXtst.so;libXcursor.so;libXfixes.so;") SET(kio_LIB_DEPENDS "/home/andreas/qt-copy/lib/libQtCore.so;-lpthread;kdecore;kdeui;libz.so;/home/andreas/kde4/lib/libstreamanalyzer.so;/home/andreas/kde4/lib/libstreams.so;/home/andreas/qt-copy/lib/libQtCore.so;-lpthread;kdecore;solid;libfam.so;libacl.so;libattr.so;libXrender.so;") And this is the linker line for the same lib with cmake 2.4.7: /usr/lib/ccache/c++ -fPIC -pipe -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common -Woverloaded-virtual -fvisibility=hidden -fvisibility-inlines-hidden -O2 -g -Wl,--enable-new-dtags -Wl,--fatal-warnings -Wl,--no-undefined -lc -shared -Wl,-soname,libkresources.so.4 -o ../lib/libkresources.so.4.1.0 "CMakeFiles/kresources.dir/kresources_automoc.o" "CMakeFiles/kresources.dir/resource.o" "CMakeFiles/kresources.dir/factory.o" "CMakeFiles/kresources.dir/managerimpl.o" "CMakeFiles/kresources.dir/configwidget.o" "CMakeFiles/kresources.dir/configdialog.o" "CMakeFiles/kresources.dir/selectdialog.o" "CMakeFiles/kresources.dir/configpage.o" "CMakeFiles/kresources.dir/idmapper.o" "CMakeFiles/kresources.dir/kresourcesmanageradaptor.o" -L/home/andreas/qt-copy/lib -L/home/andreas/kde4/lib -lQtCore -lpthread -lkdecore -lkdeui -lz -lstreamanalyzer -lstreams -lQtCore -lpthread -lkdecore -lsolid -lfam -lacl -lattr -lXrender -lkio -lQtSvg -lSM -lICE -lX11 -lXext -lXft -lXau -lXdmcp -lXpm -lXtst -lXcursor -lXfixes -lQtNetwork -lbz2 -lresolv -lQtCore -lpthread -lQtDBus -lQtXml -lQtGui -Wl,-rpath,/home/andreas/qt-copy/lib:/home/andreas/kde4/lib -- Don't look back, the lemmings are gaining on you. _______________________________________________ CMake mailing list [email protected] http://www.cmake.org/mailman/listinfo/cmake
