Hmm, I can't find where the -fPIC comes from, doing find . -name '*.cmake' | xargs grep -i fpic in my src directory did not find anything.
Do you have any special cmake files / tarballs that are just used for BSD (as this seems to be what you are compiling on)? On 10 June 2012 19:21, Friedrich W. H. Kossebau <[email protected]> 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/dolphi >> > 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/dolph >> > 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) > --- 8< --- > Buildsystem experts, is that still valid/needed to do? > > Cheers > Friedrich > _______________________________________________ > kde-sdk-devel mailing list > [email protected] > https://mail.kde.org/mailman/listinfo/kde-sdk-devel _______________________________________________ Kde-buildsystem mailing list [email protected] https://mail.kde.org/mailman/listinfo/kde-buildsystem
