gpt4 book ai didi

cmake - CMAKE_INSTALL_PREFIX 和 CMAKE_INSTALL_RPATH 有什么区别

转载 作者:行者123 更新时间:2023-12-03 09:53:18 24 4
gpt4 key购买 nike

我很难理解 CMAKE_INSTALL_PREFIX 和 CMAKE_INSTALL_RPATH 之间的区别。

如果我理解得很好, CMAKE_INSTALL_PREFIX 是将要安装的前缀目录。因此,如果我使用以下脚本进行安装:

project(hello)
add_library(hello hello.h hello.cpp)
set(CMAKE_INSTALL_PREFIX "c:/ABC/DEF")
INSTALL(TARGETS hello EXPORT hello_export
RUNTIME DESTINATION bin
LIBRARY DESTINATION bin
ARCHIVE DESTINATION lib
FRAMEWORK DESTINATION bin
INCLUDES DESTINATION include
)

然后静态库将安装在 C:/ABC/DEF/lib 中。

然后,我的问题是使用 CMAKE_INSTALL_RPATH 有什么意义?

最佳答案

在支持 c:/ABC/DEF 形式路径的系统上(即 Windows),无。 Windows 二进制文件没有 rpath 的概念.

在具有 DT_RPATH 的系统上和 DT_RUNPATH (= 那些使用 ELF 二进制文件的),CMake 变量 CMAKE_INSTALL_RPATH用于设置DT_RPATH的值(或 DT_RUNPATH )标签,这些标签将在安装时写入二进制文件。

关于cmake - CMAKE_INSTALL_PREFIX 和 CMAKE_INSTALL_RPATH 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32047805/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com