【发布时间】:2014-05-17 14:01:03
【问题描述】:
我想将一些库分发到我的 OS X 应用程序包中,最近两天我正在处理这个问题,但没能成功。直到现在我做了什么。
使用安装名称工具我有固定的库路径。此外,我还及时尝试了@loader_path/../Libraries 和@executable_path/../Libraries。
otool -L libMagickWand-6.Q16.2.dylib
@rpath/../Libraries/libMagickWand-6.Q16.2.dylib (compatibility version 3.0.0, current version 3.0.0)
@rpath/../Libraries/libMagickCore-6.Q16.2.dylib (compatibility version 3.0.0, current version 3.0.0)
@rpath/../Libraries/libfreetype.6.dylib (compatibility version 18.0.0, current version 18.2.0)
@rpath/../Libraries/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.5)
@rpath/../Libraries/libz.1.2.5.dylib (compatibility version 1.0.0, current version 1.2.5)
@rpath/../Libraries/libltdl.7.dylib (compatibility version 11.0.0, current version 11.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
在项目目标/构建阶段/添加新构建阶段/添加复制文件构建阶段并将所有动态库复制到我的应用程序包中。
效果很好,我可以看到这些库位于应用程序包中。
然后将@rpath/../Libraries/ 添加到构建设置/运行路径搜索路径
但仍然收到错误消息..
ld:找不到 -lMagickWand-6.Q16.2 的库 clang:错误:链接器 命令失败,退出代码为 1(使用 -v 查看调用)
如果我添加直接路径,可以说库位于 /User/username/libs/ 到构建设置中的库搜索路径。
我错过了什么吗?
【问题讨论】:
标签: objective-c cocoa xcode5 dylib