[cmake-developers] [CMake 0014135]: fixup_bundle doesn't copy QtMultimediaKit.framework correctly
Mantis Bug Tracker
mantis at public.kitware.com
Thu May 9 08:47:55 EDT 2013
The following issue has been SUBMITTED.
======================================================================
http://itk.org/Bug/view.php?id=14135
======================================================================
Reported By: Julian Serban
Assigned To:
======================================================================
Project: CMake
Issue ID: 14135
Category: CMake
Reproducibility: always
Severity: minor
Priority: normal
Status: new
======================================================================
Date Submitted: 2013-05-09 08:47 EDT
Last Modified: 2013-05-09 08:47 EDT
======================================================================
Summary: fixup_bundle doesn't copy QtMultimediaKit.framework
correctly
Description:
I am trying to use CMake/CPack to bundle a Qt program as a standalone
application. The application uses the QtMultimediaKit framework, which I have
built from source.
When running 'make install' I get:
…
-- 20/176: copying
'/opt/local/Library/Frameworks/QtNetwork.framework/Versions/4/QtNetwork'
-- 21/176: copying
'/opt/local/Library/Frameworks/QtOpenGL.framework/Versions/4/QtOpenGL'
-- 22/176: copying
'/opt/local/lib/QtMultimediaKit.framework/Versions/1/QtMultimediaKit'
-- 23/176: copying '/opt/local/lib/libcrypto.1.0.0.dylib'
-- 24/176: copying '/opt/local/lib/libssl.1.0.0.dylib'
-- 25/176: *NOT* copying
'/Users/digicorpus/digicorpus/build/ht/install/digicorpus_bundle_ht.app/Contents/plugins/mediaservice/libqqt7engine_debug.dylib'
-- 26/176: copying
'/opt/local/lib/QtMultimediaKit.framework/Versions/1/QtMultimediaKit_debug'
-- warning: resolved_item == resolved_embedded_item - not copying...
…
-- 113/176: fixing up
'/Users/digicorpus/digicorpus/build/ht/install/digicorpus_bundle_ht.app/Contents/plugins/mediaservice/libqqt7engine_debug.dylib'
-- 114/176: fixing up
'/opt/local/lib/QtMultimediaKit.framework/Versions/1/QtMultimediaKit_debug'
exe_dotapp_dir/='/Users/digicorpus/digicorpus/build/ht/install/digicorpus_bundle_ht.app/'
item_substring='/opt/local/lib/QtMultimediaKit.framework/Versions/1/QtMultimediaKit_deb'
resolved_embedded_item='/opt/local/lib/QtMultimediaKit.framework/Versions/1/QtMultimediaKit_debug'
Install or copy the item into the bundle before calling fixup_bundle.
Or maybe there's a typo or incorrect path in one of the args to fixup_bundle?
CMake Error at /opt/local/share/cmake-2.8/Modules/BundleUtilities.cmake:568
(message):
cannot fixup an item that is not in the bundle...
Call Stack (most recent call first):
/opt/local/share/cmake-2.8/Modules/BundleUtilities.cmake:656
(fixup_bundle_item)
cmake_install.cmake:248 (fixup_bundle)
make: *** [install] Error 1
In the directory '/opt/local/lib/QtMultimediaKit.framework/Version/1/' my
computer contains both 'QtMultimediaKit' and 'QtMultimediaKit_debug'. It seems
fixup_bundle refuses to copy over "QtMultimediaKit_debug" because
"QtMultimediaKit" already exists, but later claims that it cannot find
"QtMultimediaKit_debug".
Additional Information:
This error is similar to Bug 0013600. See
http://itk.org/Bug/view.php?id=13600&nbn=5. Furthermore the solution proposed by
Tobias Hieta appears to fix the issue:
string(REGEX REPLACE "^.*(${item_name}.framework/${item_name}).*$"
"${default_embedded_path}/\\1" embedded_item "${item}")
However, the solution provided David Cole does not fix the issue. It seems to me
that the REGEX expression should be adjusted appropriately to also include
*_debug libraries.
======================================================================
Issue History
Date Modified Username Field Change
======================================================================
2013-05-09 08:47 Julian Serban New Issue
======================================================================
More information about the cmake-developers
mailing list