我正在编写一个使用ParseKit框架(http://www.parsekit.com/)的Cocoa应用程序。我已将Framework包含在正确的文件夹中,添加了Copy Files构建阶段,并将其添加到构建阶段。我可以在我的Mac上构建和启动应用程序。
但是,当我尝试在另一台Mac上运行它时,它会崩溃。控制台显示以下错误消息:
dyld: Library not loaded: /Users/Jordan/Files/ParseKit/build/Debug/ParseKit.framework/Versions/A/ParseKit
看起来应用程序启动时,它正在本地驱动器上查找框架。但是,该框架位于“复制文件”构建阶段,因此已将其复制到该应用程序的“内容/框架”文件夹中。如果应用程序正在查看此文件夹,它将能够正常加载框架,但由于某种原因,它正在原始Mac上的本地驱动器上查找它(显然在其他Mac上不存在)。
我做错了什么?
答案 0 :(得分:2)
使用install_name_tool
将框架的安装路径更改为“@loader_path /../ Frameworks /".
答案 1 :(得分:1)
由于听起来您是从源代码构建它,因此请在其Xcode项目中设置安装路径。您应该在原始开发人员工作后向原始开发人员提交补丁(部分是为了让您更轻松地跟上框架的未来更新)。