patchelf修改rpath

Posted 王万林 Ben

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了patchelf修改rpath相关的知识,希望对你有一定的参考价值。

修改eog的rpath步骤:
readelf -d eog
0x000000000000000f (RPATH)              Library rpath: [/usr/lib64/eog]

直接使用patchelf --set-rpath只是修改成了runpath,不是rpath:
patchelf --set-rpath '$ORIGIN/../lib64/eog' eog
readelf -d eog
0x000000000000001d (RUNPATH)            Library runpath: [$ORIGIN/../lib64/eog]

使用patchelf --set-rpath时需要加上--force-rpath才是设置rpath:
patchelf --force-rpath --set-rpath '$ORIGIN/../lib64/eog' eog
readelf -d eog
0x000000000000000f (RPATH)              Library rpath: [$ORIGIN/../lib64/eog]

以上是关于patchelf修改rpath的主要内容,如果未能解决你的问题,请参考以下文章

linux 修改 elf 文件的dynamic linker 和 rpath

patchelf 修改 rpath 以解决动态库问题

patchelf: not found错误解决及功能说明

Qt程序发行Linux版,软件打包知识(patchelf 工具修改依赖库,确认 qmake -v 是自己使用的Qt版本,否则用export PATH进行修改)good

编译修改OpenCV的rpath

MAC:使用install_name_rpath修改编译结果的rpath