如何理解ldconfig -p的输出?

[root@ elf]# ldconfig -p 939 libs found in cache `/etc/ld.so.cache' libz.so.1 (libc6,x86-64) => /usr/lib64/libz.so.1 libz.so.1 (libc6) => /usr/lib/libz.so.1 libz.so (libc6,x86-64) => /usr/lib64/libz.so 

这是什么意思?

它只是显示dynamic链接程序将其保存在caching中的哪些库以及在哪里find它们。 这样做是为了使程序能够find它们所需要的库,而不pipe它们存储在何处,并减less程序的启动时间,因为它们不需要在启动时被search,只是在caching中查找并加载。

libz.so.1的情况下,有两种可用的版本,一种是64位版本,另一种是32版本版本,程序会在启动时询问他们需要的版本,并指向正确的文件。

最后, libz.solibz.so.1之间的区别使得有可能为了需要它们的程序保留较旧的库变体。 这样,程序可以要求任何变体( libfoo.so ),特定版本( libfoo.13.2 )或版本上的一些限制。