我有一个第三方框架(我已经开发)作为Xcode中命令行应用程序的子项目.
如果我在Xcode中构建我的命令行应用程序,它会构建框架,然后构建应用程序,链接到框架.
当我运行构建的应用程序时,它正确地在应用程序的当前工作目录中查找框架.所以:
otool -L my_application
得到:
@ executable_path/MyFramework.framework /版本/ A/MyFramework
但是,如果我从命令行构建我的应用程序xcodebuild
,构建的应用程序查找/Library/Frameworks/
框架,我得到以下运行时错误:
dyld:未加载库:/ Library/Frameworks/MyFramework.framework/Versions/A/MyFramework引用自:/ path/to/my_application原因:未找到图像
所以,基本上xcodebuild
似乎没有运行必要的命令(install_name_tool -change
?)来更新可执行文件的链接@executable_path/..
我的xcodebuild
命令是以下形式:
xcodebuild -project path/to/project.xcodeproj -scheme my_scheme -configuration Release CONFIGURATION_BUILD_DIR=`pwd`/project
这是OS X 10.8.4上的Xcode 4.6