如何从cmake为可执行文件设置DYLD_LIBRARY_PATH?

时间:2019-03-02 02:37:23

标签: cmake environment-variables

我编译了一个可执行文件,该文件链接到Mac OS上的某个库a.dyld,该文件使用cmake位于/mylib中。 当我尝试运行该程序时,出现错误消息:

dyld: library not loaded a.dyld
Referenced from: path the executable file belongs
Reason: imagh not found.

因此,如果我将环境变量$DYLD_LIBRARY_PATH设置为/mylib,则程序可以正常工作。 但是我不想这样做,因为它会强制每个可执行文件查找相同的库。 (我在许多目录中都有多个同名的库,其中每个目录名都指定了库的功能。)

是否可以从cmake设置$DYLD_LIBRARY_PATH

说,我有多个目录,例如

test_project
  |--CMakeLists.txt
  |--/src 
     |--CMakeLists.txt (build b.dyld)
     ... (programs for b.dyld)
  |--/run_test1
     |-- CMakeLitsts.txt  (link b.dyld, and a.dyld under /mylyb1)
     |-- (programs to be run)
  |--/run_test2
     |-- CMakeLitsts.txt  (link b.dyle, and a.dyld under /mylyb2)
     |-- (programs to be run)
  ... (/run_testN)

0 个答案:

没有答案