On Sunday 10 June 2012, Friedrich W. H. Kossebau wrote: > Am Sonntag, 10. Juni 2012, 20:10:35 schrieb Friedrich W. H. Kossebau: > > Hi Rex, > > > > Am Sonntag, 10. Juni 2012, 13:00:37 schrieb Rex Dieter: > > > On 06/10/2012 12:41 PM, Rex Dieter wrote: > > > > Seems some odd cmake borkage is going on trying to build > > > > kdesdk-4.8.90 (4.8.80 suffered the same, but I hadn't noticed then), > > > > in that any modules using kde4_add_plugin seem to not get compiled > > > > with -fPIC properly, and fail linking, for example, > > > > > > > > dolphin-plugins: > > > > /usr/bin/ld: > > > > CMakeFiles/fileviewsvnplugin.dir/fileviewsvnplugin_automoc.o: > > > > relocation R_X86_64_32 against > > > > `_ZN17FileViewSvnPlugin16staticMetaObjectE' can not be used when > > > > making a shared object; recompile with -fPIC > > > > > > ... > > > > > > > blindly replacing kdesdk toplevel CMakeLists.txt with that from 4.8.4 > > > > makes things happy again. > > > > > > So, more data: > > > > > > ... = a bunch of -I... includes not relevant, > > > > > > 4.8.4 gets compiled as: > > > > > > cd .../kdesdk-4.8.4/build/dolphin-plugins/svn && /usr/lib64/ccache/c++ > > > > > > -DMAKE_FILEVIEWSVNPLUGIN_LIB -D_BSD_SOURCE -D_XOPEN_SOURCE=500 > > > > > > -D_BSD_SOURCE -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT > > > -DKDE_DEPRECATED_WARNINGS -DKDE4_CMAKE_TOPLEVEL_DIR_LENGTH=48 > > > -DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS > > > -Wnon-virtual-dtor -Wno-long-long -ansi -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 -O2 -g -DNDEBUG > > > -DQT_NO_DEBUG -fPIC ... -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -o > > > CMakeFiles/fileviewsvnplugin.dir/fileviewsvnplugin_automoc.o -c > > > /home/rdieter1/pkgs.fedoraproject.org/kdesdk/foo/kdesdk-4.8.4/build/dol > > > phi n- plugins/svn/fileviewsvnplugin_automoc.cpp > > > > > > and in 4.8.90 this get's compiled with: > > > > > > cd .../kdesdk-4.8.90/build/dolphin-plugins/svn && /usr/lib64/ccache/c++ > > > > > > -DMAKE_FILEVIEWSVNPLUGIN_LIB -DQT_NO_STL -DQT_NO_CAST_TO_ASCII > > > > > > -D_REENTRANT -DKDE_DEPRECATED_WARNINGS > > > -DKDE4_CMAKE_TOPLEVEL_DIR_LENGTH=48 -DQT_USE_FAST_CONCATENATION > > > -DQT_USE_FAST_OPERATOR_PLUS -O2 -g -DQT_NO_DEBUG ... > > > -D_LARGEFILE64_SOURCE -o > > > CMakeFiles/fileviewsvnplugin.dir/fileviewsvnplugin_automoc.o -c > > > /home/rdieter1/pkgs.fedoraproject.org/kdesdk/foo/kdesdk-4.8.90/build/do > > > lph in -plugins/svn/fileviewsvnplugin_automoc.cpp > > > > > > > > > many differences (mostly flags being removed), but most noticeable > > > causing the immediate issue was -fPIC > > > > > > any advice, clues, suggestions? > > > > Can you try if the attached patch helps at least for the dolphin-plugins? > > No, should not help from what I see :/ > > FindKDE4Internal.cmake has the line: > --- 8< --- > set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL - > DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS - > DKDE4_CMAKE_TOPLEVEL_DIR_LENGTH=${_KDE4_CMAKE_TOPLEVEL_DIR_LENGTH}) > --- 8< --- > > so now I even wonder what those lines in kdesdk/CMakeLists.txt are for: > --- 8< --- > # The FindKDE4.cmake module sets _KDE4_PLATFORM_DEFINITIONS with > # definitions like _GNU_SOURCE that are needed on each platform. > set(CMAKE_REQUIRED_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} - > DQT_STRICT_ITERATORS)
CMAKE_REQUIR$ED_DEFINITIONS is used by the various check_*() macros provided by cmake, e.g. check_include_files() etc. I don't know about -DQT_STRICT_ITERATORS. Alex
_______________________________________________ kde-sdk-devel mailing list kde-sdk-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-sdk-devel