我正在使用ctypes为共享Linux库编写Python包装器。有没有办法以编程方式提取库的soname(例如,可能通过某些库访问其ELF数据)? (我知道我可以从objdump命令的输出中获取这些信息,但我很好奇是否可以在不执行系统命令的情况下完成。)
答案 0 :(得分:2)
当然,您可以使用objdump
执行subprocess
,然后解析其输出以获取soname,但这是您要避免的。但是,shell示例为here。
还有pyelftools可供查看。据我所知,它应该能够检索所有必要的数据。
答案 1 :(得分:0)
想出来;解决方案(使用pyelftools)发布了here。