gpt4 book ai didi

c - 什么会干扰库加载路径

转载 作者:行者123 更新时间:2023-11-30 15:30:52 25 4
gpt4 key购买 nike

我有一个 C 程序 (IDS vortex),它使用库 libbsf。我有几台或多或少相同的 ubuntu 机器,并且 vortex 在所有机器上都运行良好,除了其中一台。

在那一个上它找不到库。显式设置 LD_LIBRARY_PATH=/usr/local/lib 有效。

/usr/local/lib 位于 /etc/ld.so.conf 以及 /etc/ld.so.conf/libc 中。 conf.

运行ld.config -v 查找该库。

我很困惑什么会干扰并阻止这个可执行文件在运行时查找库。

我已将可执行文件复制到它找到该库的其他计算机之一。

最初,我使用 puppet 将可执行文件和库分发到所有机器上,当其中一台机器失败时,我最终编译了实际机器上的所有位,然后才确定这确实是库路径的问题。设置LD_LIBRARY_PATH验证了这一点。

征求建议!!

最佳答案

在不运行 ldconfig 的情况下更改/etc/ld.so.conf 中的任何内容都会导致问题。在这种情况下,我不知道事情是如何不同步的,但您不能假设 ld.so.conf 的当前状态反射(reflect)了运行时发生的情况。

给我指出 strace 很有用(谢谢!)我开始破解 ld.conf,但我所做的一切都没有任何改变。然后一位同事向我推荐了 ldconfig。

关于c - 什么会干扰库加载路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25299860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com