当程序附加了标志/选项时,如何列出程序的所有库依赖项和配置?

当程序附加了标志/选项时,如何列出程序的所有库依赖项和配置?

如何列出程序的所有依赖项(库)和配置,即使它获得了 argv,这会改变依赖项?

答案1

如果您的程序使用 GNU C 库的动态链接器 ( ld.so),您可以通过设置来运行它并跟踪它加载的所有库LD_DEBUG=libs

LD_DEBUG=libs yourcommand --args

这将允许您确定更改程序的参数是否会更改它加载的库。

请注意,显示的任何库ldd /path/to/yourcommand都将始终被加载,不会根据程序参数而变化。使用加载的库dlopen可能会有所不同,这将使用此技术显示出来。

如果您想了解读取了哪些配置文件,请使用strace

strace -e open yourcommand --args

相关内容