ldd显示重复的共享库

时间:2015-10-02 10:02:34

标签: c++ ldd

我不清楚为什么var search = { index: "your_index", <--- add this body: {...} }; esClient.search(search); 在找不到依赖项时不止一次向我展示同一个共享库。 在使用boost的小型可执行文件中,输出为:

ldd

否则在安装正确的依赖项后,ldd只显示一个:

libboost_chrono.so.1.49.0 => not found
libboost_system.so.1.49.0 => not found
libboost_system.so.1.49.0 => not found
libboost_program_options.so.1.49.0 => not found
libboost_regex.so.1.49.0 => not found

为什么会这样?

谢谢,

1 个答案:

答案 0 :(得分:4)

第二次,ldd找到了共享库,并缓存了这些信息,因此无需继续查找。

但是在第一种情况下,它找不到共享库,因此无需缓存。因此,当它发现另一个你知道应该是同一个共享库的引用时,它只知道它没有找到它,所以它寻找它。然后第二次打印错误。