我有一个使用ADD_EXECUTABLE
创建的Cmake可执行文件。
可执行文件需要(链接到)已创建的共享库
也是该项目的一部分。
作为最后一步,我想将此可执行文件作为构建过程的一部分来运行 为构建创建一些额外的文件。
所以
ADD_EXECUTABLE(foo)
ADD_CUSTOM_COMMAND(OUTPUT out1
WORKING_DIRECTORY dir1
COMMAND foo args
...)
但是,当自定义命令运行时,它会出现错误
.../foo: error while loading shared libraries: libbar.so.1: cannot open shared object file: No such file or directory
make[2]: *** [out1] Error 127
make: *** [all] Error 2
问题是没有为可执行文件设置LD_LIBRARY_PATH
来加载库
libbar.so.1
。如何以跨平台方式在cmake中设置加载库设置。
我不想使用RPATH,因为它实际上将这些路径嵌入到可执行文件中,我
不想要。