可执行文件的RPATH等效项
我有一个c ++共享库,作为其正常行为fork()/ execs()的一部分,包含一些不稳定的遗留代码。除了这个库之外,这个可执行文件没有用,所以我想避免将它放在PATH目录中。我还希望能够在不同的位置安装多个副本,因此不希望硬编码路径。有没有相当于RPATH的东西允许exec()找到这个可执行文件?或者,是否可以从库本身查询共享库的rpath?
编辑:这篇文章表明后者是可能的。如果有人知道问题的答案,我会保持公开。有没有办法检查Linux上的当前rpath?
没有找到相关结果
已邀请:
2 个回复
弦砂牧扁
来获取共享对象中的环境,但是你真的想要使用它吗?让共享对象在用户的主目录(或自定义环境变量)中有某种配置文件告诉它使用哪个位置运行外部二进制文件,这不是更好吗?
乐遣杀屎
来运行二进制文件。大概你可以设置
然后
一个shell,它将使用PATH来查找可执行文件的副本。相当于库的是将
和
设置为将此库作为依赖项的二进制文件。 在任何一种情况下,您都不会更改外部环境,只会生成与
一起使用的修改后的副本。