我有一个应用程序,调用它Animal.app
。在它的Contents/Frameworks
文件夹里面是一个框架,比如说Mammal.framework
. 在框架的Versions/A/Frameworks
文件夹中,我有dog.dylib
. 的安装名称dog.dylib
是@rpath/dog.dylib。对于"Runpath Search Paths"
框架的设置,我已经指定了@loader_path/../Frameworks
. (我对最后一个设置的推理是 dylib 的“加载器”将是框架的二进制文件,位于路径Mammal.framework/Versions/A/Mammal
。)
我在运行时收到一条错误消息:
Dyld Error Message:
Library not loaded: @rpath/dog.dylib
Referenced from: /Volumes/VOLUME/*/Animal.app/Contents/MacOS/../Frameworks/Mammal.framework/Versions/A/Mammal
Reason: image not found
我已经阅读了 Apple 的“Run-Path Dependent Libraries”文档和 Mike Ash 在 上的博客文章@rpath
,但我仍然看不出我做错了什么。