我正在开发一个ldd-python
脚本。
据我所知,ELF二进制文件本身只有关于图书馆SONAME
的信息。
如何通过此SONAME
获取库的完整路径?
我想像这个原始 ldd 结果一样打印:
$ ldd test
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb7d28000)
>ldd
通过在特殊模式下运行ld.so
来打印此信息 (LD_TRACE_LOADED_OBJECTS
(。因此,您唯一的选择是在内部运行ldd
并解析其输出或尝试在Python中对其行为进行建模(但请注意,这样的模型必须非常复杂,特别是一旦您到达setuid二进制文件(。