使用cmake执行完bulid之后,再使用install 提示报错,说RPATH_CHANGE无法向libexec/moc文件写入$ORIGIN/../lib

使用cmake执行完bulid之后,再使用install 提示报错,说RPATH_CHANGE无法向libexec/moc文件写入$ORIGIN/../lib

阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
你遇到的问题是,在使用 cmake 执行完 build 之后,使用 install 命令安装 at 时,提示报错,说 RPATH_CHANGE 无法向 libexec/moc 文件写入 $ORIGIN/../lib。
这个问题可能是由于 cmake 的 RPATH 机制导致的。RPATH 是一个指向库文件的路径,用于在执行程序时找到库文件。
解决这个问题,你可以尝试以下几种方法:
cmake 的 -DCMAKE_INSTALL_RPATH 选项来指定安装路径。例如:cmake -DCMAKE_INSTALL_RPATH=/path/to/install/dir ..
cmake --build . --target install
cmake 的 -DCMAKE_SKIP_RPATH 选项来跳过 RPATH 机制。例如:cmake -DCMAKE_SKIP_RPATH=TRUE ..
cmake --build . --target install
CMakeLists.txt 文件中添加以下代码来设置 RPATH:set(CMAKE_INSTALL_RPATH ${CMAKE_CURRENT_BINARY_DIR}/lib)
sudo 命令时,可能会导致权限问题。尝试使用 cmake 和 install 命令时不使用 sudo 命令。如果以上方法都不能解决问题,你可以提供更多的日志信息和 CMakeLists.txt 文件内容,以便更好地帮助你解决问题。