以相对路径

时间:2016-08-17 11:48:27

标签: c++ cmake rpath

有没有办法从CMakeLists.txt指定共享库路径? 我想制作一个使用OpenCV的可执行文件,但我不希望最终用户安装OpenCV。相反,我想提供一个包含我的可执行文件和它需要的共享库的文件夹。最终的结构应该是

投放

  • MyApp的
  • OpenCV(包含opencv dylibs的文件夹)

最后,MyApp应该在OpenCV文件夹中搜索共享库。 我试图使用来自https://cmake.org/Wiki/CMake_RPATH_handling的信息,但出于某种原因,我似乎并不理解我为实现我想要的东西而必须做些什么。

我尝试将CMAKE_INSTALL_RPATH设置为@loader_path或@executable_path,但看不到任何更改。它仍然在/ lib文件夹中搜索opencv库。

运行otool -L MyApp会导致:

lib / libopencv_imgproc.3.1.dylib(兼容性版本3.1.0,当前版本3.1.0) lib / libopencv_imgcodecs.3.1.dylib(兼容版本3.1.0,当前版本3.1.0) lib / libopencv_highgui.3.1.dylib(兼容版本3.1.0,当前版本3.1.0) lib / libopencv_core.3.1.dylib(兼容版本3.1.0,当前版本3.1.0)

/ usr / lib / libc ++。1.dylib(兼容性版本1.0.0,当前版本120.1.0)

/usr/lib/libSystem.B.dylib(兼容性版本1.0.0,当前版本1226.10.1)

0 个答案:

没有答案