MantisBT - CMake | |||||
View Issue Details | |||||
ID | Project | Category | View Status | Date Submitted | Last Update |
0015918 | CMake | Modules | public | 2016-01-13 23:08 | 2016-06-10 14:21 |
Reporter | xzcvczx | ||||
Assigned To | |||||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | suspended | ||
Platform | Apple | OS | Mac OSX | OS Version | 10.11 |
Product Version | CMake 3.4.1 | ||||
Target Version | Fixed in Version | ||||
Summary | 0015918: fixup_bundle issues with dependency @loader_path | ||||
Description | If a cmake project target (1) depends on a library (2) which depends on another library(3) using @loader_path then fixup_bundle won't be able to copy (3) as it will not understand the path @loader_path, nor does it have enough information to resolve the path. | ||||
Steps To Reproduce | I currently have an application which depends on /usr/local/lib/libboost_context-mt.dylib this in turn depends on @loader_path/libboost_chrono-mt.dylib libboost was installed using homebrew. I was having issues as @loader_path was not being copied into the binaries directory as part of the fixup_bundle process and so it would fail. After a fair amount of work i found it was use get_prerequisites which would give a list of files, but it never provides the resolved paths, I hacked this to provide the resolved paths, and then when verify_app was occuring it would die there as well due to everything having a resolved path Attached is a patch that allows it to work but is just a hack which works by adding a argument to add_reprequisites thats currently being used to say whether a resolved path or a relative path is wanted. | ||||
Additional Information | otool -L for the cmake target (1) build/eeschema/eeschema.app/Contents/MacOS/eeschema: /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 157.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 22.0.0) /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 492.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1) /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0) /Users/simon/Documents/stuff/kicad-mac-packaging/wx/wx-build/../wx-bin/lib/libwx_osx_cocoau_gl-3.0.0.dylib (compatibility version 3.0.0, current version 3.0.0) /Users/simon/Documents/stuff/kicad-mac-packaging/wx/wx-build/../wx-bin/lib/libwx_osx_cocoau-3.0.0.dylib (compatibility version 3.0.0, current version 3.0.0) /usr/local/opt/boost/lib/libboost_context-mt.dylib (compatibility version 0.0.0, current version 0.0.0) /usr/local/opt/boost/lib/libboost_system-mt.dylib (compatibility version 0.0.0, current version 0.0.0) /usr/local/opt/boost/lib/libboost_thread-mt.dylib (compatibility version 0.0.0, current version 0.0.0) /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.1.0) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1256.14.0) otool -L for brew installed libboost_context-mt.dylib (2) /usr/local/opt/boost/lib/libboost_context-mt.dylib: /usr/local/opt/boost/lib/libboost_context-mt.dylib (compatibility version 0.0.0, current version 0.0.0) @loader_path/libboost_chrono-mt.dylib (compatibility version 0.0.0, current version 0.0.0) @loader_path/libboost_thread-mt.dylib (compatibility version 0.0.0, current version 0.0.0) @loader_path/libboost_system-mt.dylib (compatibility version 0.0.0, current version 0.0.0) /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.1.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1225.1.1) otool -L for brew installed libboost_chrono-mt.dylib /usr/local/opt/boost/lib/libboost_chrono-mt.dylib: /usr/local/opt/boost/lib/libboost_chrono-mt.dylib (compatibility version 0.0.0, current version 0.0.0) @loader_path/libboost_system-mt.dylib (compatibility version 0.0.0, current version 0.0.0) /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.1.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1225.1.1) | ||||
Tags | No tags attached. | ||||
Relationships | |||||
Attached Files | Bundle.patch (1,791) 2016-01-13 23:08 https://public.kitware.com/Bug/file/5611/Bundle.patch | ||||
Issue History | |||||
Date Modified | Username | Field | Change | ||
2016-01-13 23:08 | xzcvczx | New Issue | |||
2016-01-13 23:08 | xzcvczx | File Added: Bundle.patch | |||
2016-01-14 08:42 | Brad King | Note Added: 0040229 | |||
2016-01-14 09:15 | xzcvczx | Note Added: 0040231 | |||
2016-01-14 10:44 | Brad King | Note Added: 0040237 | |||
2016-05-28 23:05 | xzcvczx | Note Added: 0041108 | |||
2016-05-28 23:06 | xzcvczx | Note Edited: 0041108 | bug_revision_view_page.php?bugnote_id=41108#r2122 | ||
2016-05-31 09:50 | Brad King | Status | new => resolved | ||
2016-05-31 09:50 | Brad King | Resolution | open => suspended | ||
2016-06-10 14:21 | Kitware Robot | Note Added: 0041162 | |||
2016-06-10 14:21 | Kitware Robot | Status | resolved => closed |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|