【发布时间】:2015-04-30 16:05:55
【问题描述】:
我的尝试
我正在使用 MAC OSX 中的 Caffe 模型工作示例应用程序。我从 https://github.com/BVLC/caffe 下载了 Caffe 源代码。 步骤:
1.安装了caffe的依赖包,如Caffe Link中所述。一些软件包在 /usr/local/lib 和一些软件包 /opt/local/lib
2.在 CMake GUI 中使用 CMakeLists.txt 构建共享库(SO)文件。
3.创建示例c++应用程序
4.用c++应用链接所有依赖和caffe库文件。
- 构建应用程序
我执行应用程序后,它需要来自/usr/local/lib
的依赖包的库文件我想要什么
安装caffe依赖后,我将所有库文件复制到另一个位置。
如何在Cmake.中链接库的指定位置文件?
在 Mac osx 中,当应用程序运行时,它采用库形式 /usr/local/lib 不在当前文件夹(应用程序文件夹)中。
如何设置应用程序从当前文件夹获取库文件?
【问题讨论】:
-
这些caffe依赖是动态库吗(有.dylib后缀)?
-
我的理解是,在 OSX 中,动态库会标有它们的路径,因此当您构建应用程序时,它会在该位置进行搜索。您可以使用
install_name_tool更改它,但您希望在构建之前执行此操作,否则应用程序会在错误的位置查找。 -
现在我想起来了,mac 使用 .so 文件吗?我以为它只是做了 .dylib...
-
感谢您的回答。所有动态库扩展都有 .dylib。我试过“install_name_tool”。但我没有得到它。提供使用“install_name_tool”更改库路径的示例。?