我有一个 CMakeLists.txt 文件,其中包含这样的代码行:
link_directories(dir_a dir_b dir_c)
当我构建可执行文件并执行
readelf -d
在它上面,我看到带有 dir_a、dir_b dir_c 的 RPATH。
如果我想创建,我可以用 cmake 做什么
- 可以使用空 RPATH 执行吗?
- 可以使用某些路径执行,但未在 link_directories 行中指定?
可执行文件不应该被“安装”。
从这个cmake-documentation你可以读到:
CMAKE_SKIP_RPATH
让 cmake 永远不会将任何 RPATH 添加到二进制文件中,并且SET_TARGET_PROPERTIES
-functions RPATH 可以在每个目标基础上单独控制。