Skip to main content
 首页 » 编程设计

cmake之如何在CMAKE中设置RPATH

2024年02月06日105bjzhanghao

我希望在本地构建和安装软件到 $HOME/.local/ 路径,而不是系统范围的 /usr/ 文件夹。该软件使用CMAKE进行编译。

安装后,软件二进制文件和库分别存储在 $HOME/.local/bin/$HOME/.local/lib/ 中。但是,当我尝试运行该程序时,它会抛出一个错误,指出找不到所需的库(顺便说一句,该库存在于 $HOME/.local/lib/ 中)。

如果我将 $LD_LIBRARY_PATH 设置为 $HOME/.local/lib,程序就可以正常工作。但我不想这样做。因此,我想知道如何在使用 CMAKE 编译软件时指定 RPATH 变量(它将指向 $HOME/.local/lib) .

请帮忙。

请您参考如下方法:

我在 CMakefile 中使用以下两行

set(CMAKE_MACOSX_RPATH 1) 
set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") 

(仅当您使用 MacOSX 时才需要第一个)