【发布时间】:2012-11-25 23:43:47
【问题描述】:
我有一个计划用于废料堆的旧可执行文件,但它还没有。它依赖于一些已从我的环境中删除的库,但我有一些存根库可以正常工作。我想将此可执行文件指向这些存根库。是的,我可以设置 LD_LIBRARY_PATH,但是这个可执行文件是从许多脚本和许多用户中调用的,我很想在一个地方修复它。
我没有这方面的来源,而且很难得到。我在想 - 我可以编辑这个文件,使用一个 ELF 感知编辑器,并添加一个简单的 PATH 到 rpath 让它命中新的库吗?这可能吗,或者一旦你创建了一个 ELF 二进制文件,你将东西固定到位置并且它们不能移动?
【问题讨论】:
-
将其包装成一个设置 LD_LIBRARY_PATH 并调用二进制文件的 shellscript。将 shell 脚本放在调用者的 PATH 中。
-
LD_LIBRARY_PATH 由子进程继承。你可能不想要那个。
-
@will 是的,我已经说过我不想那样做。 :)