That solved my problem indeed. Thank you very much (and happy new year). Kind regards,
Greg. > On 18 Dec 2015, at 16:15, clin...@elemtech.com wrote: > > > It appears you need to add the directory(ies) in the Qt installation > containing the Qt libraries to your DIRS. > > set( DIRS > ${APP}/Contents/plugins/platforms > ${QT_BINARY_DIR} > ${QT_LIBRARY_DIR} > ) > > I think it should have been that way, even with Qt 5.3. > > Clint > > ----- On Dec 18, 2015, at 6:12 AM, Gregory Van Vooren <gregor...@packz.com> > wrote: > > I have a project containing several applications (which are sub projects), > each of which links against some Qt libraries which are built as dylibs, but > are not part of the project. Qt libraries and headers are found using > find-package which is working perfectly. > > I’m currently trying to switch from Qt 5.3.1 to Qt 5.5.1, but am experiencing > problems with fixup_bundle on OS X (everything else seems to work fine). > As far as I’ve gathered Qt has introduced support for rpaths between those > two version and this seems to be the cause of my problems. > > Building a single application works and said application starts up correctly, > but building the install target will give me the following output: > > -- fixup_bundle: preparing... > -- > warning: cannot resolve item 'libQt5Core_debug.5.dylib' > > possible problems: > need more directories? > need to use InstallRequiredSystemLibraries? > run in install tree instead of build tree? > > -- warning: gp_resolved_file_type non-absolute file > 'libQt5Core_debug.5.dylib' returning type 'other' -- possibly incorrect > -- > warning: cannot resolve item 'libQt5Core_debug.5.dylib' > > possible problems: > need more directories? > need to use InstallRequiredSystemLibraries? > run in install tree instead of build tree? > > warning: target 'libQt5Core_debug.5.dylib' is not absolute... > warning: target 'libQt5Core_debug.5.dylib' does not exist... > CMake Error at > /Applications/CMake.app/Contents/share/cmake-3.4/Modules/GetPrerequisites.cmake:800 > (message): > > > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool > failed: 1 > > error: > > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool: > can't open file: libQt5Core_debug.5.dylib (No such file or directory) > > Call Stack (most recent call first): > > /Applications/CMake.app/Contents/share/cmake-3.4/Modules/GetPrerequisites.cmake:925 > (get_prerequisites) > > /Applications/CMake.app/Contents/share/cmake-3.4/Modules/BundleUtilities.cmake:555 > (get_prerequisites) > > /Applications/CMake.app/Contents/share/cmake-3.4/Modules/BundleUtilities.cmake:804 > (get_bundle_keys) > someApplication/someApplication/cmake_install.cmake:115 (fixup_bundle) > > > I’ll try to provide sufficient yet minimal information to pinpoint the root > cause of the problem. > In my top CMakeLists.txt I have the following: > > set ( > QT_REQUIRED_PACKAGES > Core > Gui > Widgets > ) > > set( QT_ROOT_PATH "/usr/local/Qt-5.5.1" ) > set( QT_REQUIRED_PACKAGES ${QT_REQUIRED_PACKAGES} MacExtras ) > > set( > QT_PLUGINS_DIR > "${QT_ROOT_PATH}/plugins" > ) > > set ( CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} "${QT_ROOT_PATH}/bin/" ) > > FOREACH(QT_PACKAGE ${QT_REQUIRED_PACKAGES}) > set( QT_PACKAGE_WITH_PREFIX "Qt5${QT_PACKAGE}" ) > set( "${QT_PACKAGE_WITH_PREFIX}_DIR" > "${QT_ROOT_PATH}/lib/cmake/${QT_PACKAGE_WITH_PREFIX}" ) > find_package( "${QT_PACKAGE_WITH_PREFIX}" REQUIRED ) > include_directories( ${${QT_PACKAGE_WITH_PREFIX}_INCLUDE_DIRS} ) > > set_target_properties( "Qt5::${QT_PACKAGE}" PROPERTIES > MAP_IMPORTED_CONFIG_DEBUG "DEBUG") > set_target_properties( "Qt5::${QT_PACKAGE}" PROPERTIES > MAP_IMPORTED_CONFIG_RELEASE "RELEASE") > set_target_properties( "Qt5::${QT_PACKAGE}" PROPERTIES > MAP_IMPORTED_CONFIG_RELWITHDEBINFO "RELEASE") > ENDFOREACH(QT_PACKAGE) > > add_definitions( ${QT_DEFINITIONS} ) > set( CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_BINARY_DIR} ) > > set( CMAKE_MACOSX_RPATH “" ) > > set_property( GLOBAL PROPERTY USE_FOLDERS ON ) > > add_subdirectory( someApplication ) > > > > > in the someApplication CMakeLists.txt I have the following: > > set( > someApplication_Qt_LIBRARIES > ${Qt5Core_LIBRARIES} > ${Qt5Widgets_LIBRARIES} > ) > set_target_properties( someApplication PROPERTIES INSTALL_RPATH > "${QT_ROOT_PATH}/lib" ) > foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} ) > install( TARGETS someApplication DESTINATION bin/${OUTPUTCONFIG} > CONFIGURATIONS ${OUTPUTCONFIG} ) > endforeach() > > add_custom_command( TARGET someApplication POST_BUILD COMMAND mkdir -p > ${CMAKE_INSTALL_PREFIX}/LocalizationTools/someApplication/Debug/plugins/platforms/ > ) > add_custom_command( TARGET someApplication POST_BUILD COMMAND cp -Rf > "${QT_PLUGINS_DIR}/platforms/libqcocoa_debug.dylib" > ${CMAKE_INSTALL_PREFIX}/LocalizationTools/someApplication/Debug/plugins/platforms/ > ) > > add_custom_command( TARGET someApplication POST_BUILD COMMAND mkdir -p > ${CMAKE_INSTALL_PREFIX}/LocalizationTools/someApplication/Release/plugins/platforms/ > ) > add_custom_command( TARGET someApplication POST_BUILD COMMAND cp -Rf > "${QT_PLUGINS_DIR}/platforms/libqcocoa.dylib" > ${CMAKE_INSTALL_PREFIX}/LocalizationTools/someApplication/Release/plugins/platforms/ > ) > > add_custom_command( TARGET someApplication POST_BUILD COMMAND mkdir -p > `dirname $<TARGET_FILE: someApplication >`/../plugins ) > add_custom_command( TARGET someApplication POST_BUILD COMMAND cp -Rf > ${CMAKE_INSTALL_PREFIX}/LocalizationTools/someApplication/$<$<CONFIG:Debug>:Debug>$<$<NOT:$<CONFIG:Debug>>:Release>/plugins/ > `dirname $<TARGET_FILE: someApplication >`/../plugins/ ) > > add_custom_command( TARGET someApplication POST_BUILD COMMAND chmod -R +w > `dirname $<TARGET_FILE: someApplication >` ) > > set( APP > "${CMAKE_INSTALL_PREFIX}/bin/\${CMAKE_INSTALL_CONFIG_NAME}/someApplication.app" > ) > > set( DIRS > ${APP}/Contents/plugins/platforms > ) > > install( CODE " > file( WRITE \"${APP}/Contents/Resources/qt.conf\" \"[Paths]\\nPlugins > <smb://nPlugins> = plugins\\n\" ) > " COMPONENT Runtime > ) > > foreach( DYNAMIC_LIBRARY ${someApplication_DYNAMIC_LIBRARIES} ) > add_custom_command( TARGET someApplication POST_BUILD COMMAND cp -Rf > $<TARGET_FILE:${DYNAMIC_LIBRARY}> `dirname $<TARGET_FILE: someApplication >` ) > endforeach() > > install( CODE " > file( GLOB_RECURSE QT_PLATFORM_PLUGINS > \"${APP}/Contents/plugins/platforms/*${CMAKE_SHARED_LIBRARY_SUFFIX}\" ) > include( BundleUtilities ) > fixup_bundle( \"${APP}\" \"\${QT_PLATFORM_PLUGINS}\" \"${DIRS}\" ) > " COMPONENT Runtime > ) > > > Any help is greatly appreciated. > > Kind regards, > > Greg. > > > -- > > Powered by www.kitware.com > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/cmake
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake