[cmake-developers] How should Mac frameworks work?

Stephen Kelly steveire at gmail.com
Mon Jul 1 10:08:20 EDT 2013


Stephen Kelly wrote:

> He said it was interesting that full paths to the dynamic libs are used
> instead of -F and --frameworks entries. That probably relates to how the
> IMPORTED_LOCATION of the target is populated.

I asked him to hack the macro calls to 

    _populate_Core_target_properties(RELEASE "QtCore.framework" "" )

so that the IMPORTED_LOCATION would be the path to the framework, but that 
does not work:

Linking CXX executable mainapp
/usr/local/Cellar/cmake/2.8.11.1/bin/cmake -E cmake_link_script 
CMakeFiles/mainapp.dir/link.txt --verbose=1
/usr/bin/c++     -Wl,-search_paths_first -Wl,-headerpad_max_install_names   
CMakeFiles/mainapp.dir/main.cpp.o  -o mainapp  
/Users/jmt/Desktop/Bug32134/dist/lib/QtConcurrent.framework 
/Users/jmt/Desktop/Bug32134/dist/lib/QtCore.framework 
ld: can't map file, errno=22 for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see 
invocation)
make[2]: *** [mainapp] Error 1
make[1]: *** [CMakeFiles/mainapp.dir/all] Error 2


What path actually should be in the IMPORTED_LOCATION in order for the 
framework to be handled correctly?

Thanks,

Steve.





More information about the cmake-developers mailing list