Re: Review Request 123874: Fix build with Qt = 5.4.2
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/#review80860 --- Ship it! I'll take it. FTR the best solution would probably mean refactoring qt5_use_modules to isolate the mapping logic for use with LINK_LIBRARIES, or making the entire compatibility stuff not be so terrible. Hardly worthwhile as Thiago suggests moving forward Qt simply cannot be built without visibility anyway. - Harald Sitter On May 25, 2015, 4:08 p.m., Hrvoje Senjan wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 25, 2015, 4:08 p.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise check_qt_visibility fails: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 26, 2015, 6:51 p.m.) Status -- This change has been marked as submitted. Review request for Build System, Phonon and Harald Sitter. Changes --- Submitted with commit e5b7ede37a9c89b0ec69ee2be7c219a79e836fe1 by Hrvoje Senjan to branch 4.8. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise check_qt_visibility fails: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/#review80804 --- Linking against the QtCore target should bring in any flags necessary to make that link succeed. If it doesn't, that's a problem with Qt's CMake targets. Thiago's email to the list suggested that had been resolved in the 5.4.2 branch. Could you check that and confirm, please? - Alex Merry On May 22, 2015, 4:45 a.m., Hrvoje Senjan wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 22, 2015, 4:45 a.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 I am not convinced this is best solution, but requires least changes to current cmake code. Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise check_qt_visibility fails: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
On May 25, 2015, 12:34 p.m., Alex Merry wrote: Linking against the QtCore target should bring in any flags necessary to make that link succeed. If it doesn't, that's a problem with Qt's CMake targets. Thiago's email to the list suggested that had been resolved in the 5.4.2 branch. Could you check that and confirm, please? No it is not resolved for *this* case. Linking to Qt5Core works fine. Trouble is with check_qt_visibility.cpp: ``` #include QtCore/QtGlobal int main() { #ifndef QT_VISIBILITY_AVAILABLE #error QT_VISIBILITY_AVAILABLE is not available #endif } ``` and try_compile is called only with ${_include_dirs} - Hrvoje --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/#review80804 --- On May 22, 2015, 6:45 a.m., Hrvoje Senjan wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 22, 2015, 6:45 a.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 I am not convinced this is best solution, but requires least changes to current cmake code. Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise check_qt_visibility fails: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 25, 2015, 6:08 p.m.) Review request for Build System, Phonon and Harald Sitter. Changes --- Pass collected CMAKE_CXX_FLAGS flags to try_compile Repository: phonon Description (updated) --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 Diffs (updated) - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise check_qt_visibility fails: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/#review80723 --- Like Thiago already suggested on kde-core-devel, this might need additional discussion in a different venue. As for the diff itself, I am not sure hitting the compile flags with everything Qt got is a very good idea. I have no examples of when this would be undesirable but considering the position in the past was to opt-in for specific flags, as necessary, it seems a bit over the top to now simply reuse all the flags. I did some research though and I think I found why it fails. Apparently cmake implements fPIC and fPIE mutually exclusive (at least as far as CMAKE_POSITION_INDEPENDENT_CODE goes) depending on the actual target type https://github.com/Kitware/CMake/blob/e54d2fdf50d7e1170f9e3dcbcb62ebacc7205de6/Source/cmLocalGenerator.cxx#L2412 And that really makes the problem greater in scope because more things use that flag to enable PIC (http://lxr.kde.org/search?_filestring=_string=CMAKE_POSITION_INDEPENDENT_CODE) and it is in fact the recommended way to handle this right now (http://doc.qt.io/qt-5/cmake-manual.html). So yeah, I think this should probably be figured out with Qt/CMake people how to best enable position independency so both PIC and PIE are enabled at the same time. That being said, the more accruate temporary fix probably would be to manually add CMAKE_${lang}_COMPILE_OPTIONS_PIC and CMAKE_${lang}_COMPILE_OPTIONS_PIE to the flags manually (i.e. replicate what ::AddPositionIndependentFlags does but using both PIC and PIE). - Harald Sitter On May 22, 2015, 4:45 a.m., Hrvoje Senjan wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 22, 2015, 4:45 a.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 I am not convinced this is best solution, but requires least changes to current cmake code. Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise check_qt_visibility fails: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target
Re: Review Request 123874: Fix build with Qt = 5.4.2
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/#review80716 --- I'm unsure this is what you need, builds fine here... - Aleix Pol Gonzalez On May 21, 2015, 7:32 p.m., Hrvoje Senjan wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 21, 2015, 7:32 p.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 I am not convinced this is best solution, but requires least changes to current cmake code. Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
On May 22, 2015, 12:57 a.m., Aleix Pol Gonzalez wrote: I'm unsure this is what you need, builds fine here... Do you have the mentioned commit? It's in latest 5.4.2 5.4 branches, but *not* 5.5 - Hrvoje --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/#review80716 --- On May 21, 2015, 7:32 p.m., Hrvoje Senjan wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 21, 2015, 7:32 p.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 I am not convinced this is best solution, but requires least changes to current cmake code. Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
On May 22, 2015, 12:57 a.m., Aleix Pol Gonzalez wrote: I'm unsure this is what you need, builds fine here... Hrvoje Senjan wrote: Do you have the mentioned commit? It's in latest 5.4.2 5.4 branches, but *not* 5.5 Ah, sorry, I have 5.5. Anyway, are you sure this is needed? Qt5::Core should drag the definitions as well. Maybe you just need to fix the check_qt_visibility.cpp try_compile call that's happening there? - Aleix --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/#review80716 --- On May 21, 2015, 7:32 p.m., Hrvoje Senjan wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 21, 2015, 7:32 p.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 I am not convinced this is best solution, but requires least changes to current cmake code. Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
On May 22, 2015, 12:57 a.m., Aleix Pol Gonzalez wrote: I'm unsure this is what you need, builds fine here... Hrvoje Senjan wrote: Do you have the mentioned commit? It's in latest 5.4.2 5.4 branches, but *not* 5.5 Aleix Pol Gonzalez wrote: Ah, sorry, I have 5.5. Anyway, are you sure this is needed? Qt5::Core should drag the definitions as well. Maybe you just need to fix the check_qt_visibility.cpp try_compile call that's happening there? It does not work with latest 5.4.2 and 5.4 branches, the pasted error comes from there. The target properties are not relevant in this cmake phase, as it fails in check_qt_visibility test (no link targets declared up to that point) - Hrvoje --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/#review80716 --- On May 21, 2015, 7:32 p.m., Hrvoje Senjan wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 21, 2015, 7:32 p.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 I am not convinced this is best solution, but requires least changes to current cmake code. Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
On Thursday 21 May 2015 23:11:22 Aleix Pol Gonzalez wrote: On May 22, 2015, 12:57 a.m., Aleix Pol Gonzalez wrote: I'm unsure this is what you need, builds fine here... Hrvoje Senjan wrote: Do you have the mentioned commit? It's in latest 5.4.2 5.4 branches, but *not* 5.5 Ah, sorry, I have 5.5. Anyway, are you sure this is needed? Qt5::Core should drag the definitions as well. Maybe you just need to fix the check_qt_visibility.cpp try_compile call that's happening there? It's not. Update 5.4.2 again. -- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org Software Architect - Intel Open Source Technology Center PGP/GPG: 0x6EF45358; fingerprint: E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358 ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: Review Request 123874: Fix build with Qt = 5.4.2
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123874/ --- (Updated May 22, 2015, 6:45 a.m.) Review request for Build System, Phonon and Harald Sitter. Repository: phonon Description --- Or to be more accurate, with commit 3eca75de67b3fd2c890715b30c7899cebc096fe9 I am not convinced this is best solution, but requires least changes to current cmake code. Diffs - cmake/FindPhononInternal.cmake 44862b5 Diff: https://git.reviewboard.kde.org/r/123874/diff/ Testing (updated) --- Builds with 5.4.2 branch, or mentioned commit backported. Otherwise check_qt_visibility fails: ``` [ 126s] -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success [ 126s] Change Dir: /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp [ 126s] [ 126s] Run Build Command:/usr/bin/gmake cmTryCompileExec3719375587/fast [ 126s] /usr/bin/gmake -f CMakeFiles/cmTryCompileExec3719375587.dir/build.make CMakeFiles/cmTryCompileExec3719375587.dir/build [ 126s] gmake[1]: Entering directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] /usr/bin/cmake -E cmake_progress_report /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp/CMakeFiles 1 [ 126s] Building CXX object CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o [ 126s] /usr/bin/c++-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -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 -fvisibility=hidden -fPIE -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui-o CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o -c /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp [ 126s] In file included from /usr/include/qt5/QtCore/QtGlobal:1:0, [ 126s] from /home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeTmp/check_qt_visibility.cpp:1: [ 126s] /usr/include/qt5/QtCore/qglobal.h:1051:4: error: #error You must build your code with position independent code if Qt was built with -reduce-relocations. Compile your code with -fPIC (-fPIE is not enough). [ 126s] # error You must build your code with position independent code if Qt was built with -reduce-relocations. \ [ 126s] ^ [ 126s] CMakeFiles/cmTryCompileExec3719375587.dir/build.make:57: recipe for target 'CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o' failed [ 126s] gmake[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/phonon-4.8.3/build/CMakeFiles/CMakeTmp' [ 126s] gmake[1]: *** [CMakeFiles/cmTryCompileExec3719375587.dir/check_qt_visibility.cpp.o] Error 1 [ 126s] Makefile:117: recipe for target 'cmTryCompileExec3719375587/fast' failed [ 126s] gmake: *** [cmTryCompileExec3719375587/fast] Error 2 [ 126s] [ 126s] CMake Error at cmake/FindPhononInternal.cmake:416 (message): [ 126s] Qt compiled without support for -fvisibility=hidden. This will break [ 126s] plugins and linking of some applications. Please fix your Qt installation [ 126s] (try passing --reduce-exports to configure). [ 126s] Call Stack (most recent call first): [ 126s] CMakeLists.txt:47 (include) ``` Thanks, Hrvoje Senjan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem