Package: kdelibs5-dev Version: 4:4.14.10-3 Severity: serious Justification: kopete fails to build from source (but built successfully in the past) Control: affects -1 kopete
X-Debbugs-Cc set to kop...@packages.debian.org since it is known to be affected. While building kopete to verify that a proposed upload for libmsn successfully carries out the libstdc++ transition, I encountered this build error: cd kopete && /usr/bin/c++ -DKDE4_CMAKE_TOPLEVEL_DIR_LENGTH=24 -DKDE_DEPRECATED_WARNINGS -DQT_NO_CAST_TO_ASCII -DQT_NO_STL -DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_REENTRANT -D_XOPEN_SOURCE=500 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -D_FORTIFY_SOURCE=2 -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common -Woverloaded-virtual -fno-threadsafe-statics -fvisibility=hidden -Werror=return-type -fvisibility-inlines-hidden -DNDEBUG -DQT_NO_DEBUG -I. -I../../kopete -I../../libkopete -I../libkopete -I../../libkopete/ui -I../../libkopete/private -I../../libkopete/contactlist -I../../libkopete/tasks -I../../kopete/addaccountwizard -Iaddaccountwizard -I../../kopete/statusmenu -Istatusmenu -I../../kopete/identity -Iidentity -I../../kopete/contactlist -Icontactlist -I../../kopete/config/plugins -I/usr/include/KDE -I/usr/include/qt4/KDE -I/usr/include/qt4 -I/usr/include/qt4/phonon -I/usr/include/qt4/QtXmlPatterns -I/usr/include/qt4/QtXml -I/usr/include/qt4/QtUiTools -I/usr/include/qt4/QtTest -I/usr/include/qt4/QtSvg -I/usr/include/qt4/QtSql -I/usr/include/qt4/QtScriptTools -I/usr/include/qt4/QtScript -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtHelp -I/usr/include/qt4/QtDesigner -I/usr/include/qt4/QtDeclarative -I/usr/include/qt4/QtDBus -I/usr/include/qt4/Qt3Support -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtCore -I/usr/include/qt4/Qt -I/usr/share/qt4/mkspecs/default -I/usr/include/qimageblitz -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -o CMakeFiles/kopete_bin.dir/kopeteadaptor.o -c kopeteadaptor.cpp make[4]: *** No rule to make target '/usr/lib/libsoprano.so', needed by 'kopete/kopete'. Stop. This appears to be because KDeclarative's CMake glue mentions that library: % ack libsoprano /usr/lib /usr/lib/cmake/KDeclarative/KDeclarativeLibraryTargets-debian.cmake 12: IMPORTED_LINK_INTERFACE_LIBRARIES_DEBIAN "kdeui;/usr/lib/libsoprano.so" If a particular -dev package requires linking with some other library, it should depend on that library's -dev package (the same principle as depending on the -dev packages of the libraries mentioned in a pkg-config .pc file). There is an additional, more minor bug here, which could perhaps be fixed at the same time: that cmake file mentions libsoprano by its fully qualified path, so kopete would also FTBFS in a similar way if libsoprano was moved from /usr/lib to /usr/lib/${DEB_HOST_MULTIARCH}. If I'm understanding correctly, the CMake glue should ideally list system libraries by the name that would follow the "-l" linker argument, for example "kdeui;soprano", in the same way that pkg-config would normally result in "-lkdeui -lsoprano". Please clone a separate bug for this if it is confirmed but not trivial to fix. Regards, S