在Python程序中获取共享库soname

时间:2013-03-07 15:48:22

标签: python version shared-libraries elf objdump

我正在使用ctypes为共享Linux库编写Python包装器。有没有办法以编程方式提取库的soname(例如,可能通过某些库访问其ELF数据)? (我知道我可以从objdump命令的输出中获取这些信息,但我很好奇是否可以在不执行系统命令的情况下完成。)

2 个答案:

答案 0 :(得分:2)

当然,您可以使用objdump执行subprocess,然后解析其输出以获取soname,但这是您要避免的。但是,shell示例为here

还有pyelftools可供查看。据我所知,它应该能够检索所有必要的数据。

答案 1 :(得分:0)

想出来;解决方案(使用pyelftools)发布了here