1

我有一个 CMakeLists.txt 文件,其中包含这样的代码行:

link_directories(dir_a dir_b dir_c)

当我构建可执行文件并执行

readelf -d

在它上面,我看到带有 dir_a、dir_b dir_c 的 RPATH。

如果我想创建,我可以用 cmake 做什么

  • 可以使用空 RPATH 执行吗?
  • 可以使用某些路径执行,但未在 link_directories 行中指定?

可执行文件不应该被“安装”。

4

1 回答 1

1

从这个cmake-documentation你可以读到:

  • 您可以使用该变量CMAKE_SKIP_RPATH让 cmake 永远不会将任何 RPATH 添加到二进制文件中,并且
  • 使用SET_TARGET_PROPERTIES-functions RPATH 可以在每个目标基础上单独控制。
于 2015-08-25T13:25:47.070 回答