ldd是否显示所有递归依赖项

时间:2016-04-21 17:10:26

标签: unix shared-libraries ldd

假设我有一个A.so文件,其依赖关系来自ldd

#ldd A
[...]
libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00007faaf9722000)
libxyz.so.49 => /usr/lib64/libxyz.so.49 (0x00007faaf5689000)

现在这意味着,在存在libxml2.so.2和libxyz.so.49的情况​​下,一切都设置为让我使用A.so.如果libxyz.so.49内部依赖某些libabc.so.2怎么样?

我想澄清一下,当从ldd找到A.so的依赖关系时,libabc.so.2是否会被列出或者是否会被反映出来?如果没有,那我怎样才能找到所有相互依赖?可以通过调用方式在链中丢失相互依赖关系并且在核心/崩溃中没有相同的结果吗?

1 个答案:

答案 0 :(得分:7)

根据this answer,ldd显示了给定二进制文件运行应用程序所需的所有动态库。这包括您要求的传递依赖。