我知道我可以通过设置LD_LIBRARY_PATH等来修改库搜索路径,但是这种方法有时很糟糕。我真的希望/usr/local/lib在默认的路径中,但不幸的是,在GNU/Linux中,这似乎不是默认的。(我以前在/usr/local/lib上遇到过很多问题,而在/usr/lib中安装相同的库反而解决了这些问题。但我真的不想惹/usr/lib。)
那么,是否有可能一劳永逸地修改默认库路径?谢谢。
发布于 2013-06-14 15:44:33
在Linux中,您可以在/etc/ld.so.conf中编辑条目。
还可以在编译后的可执行文件中直接更改默认搜索路径,方法是传递
-R /usr/local/lib
到C编译器。
可以使用以下方法检查可执行文件的编译后搜索路径:
readelf -d <file> | grep RPATH
有一个更全面的描述这里。
发布于 2013-06-14 15:47:25
最好将库路径更改为某个二进制文件:
patchelf --set-rpath=/usr/local/lib:/usr/lib my_binaryhttps://stackoverflow.com/questions/17112190
复制相似问题