从静态库中提取gcc版本信息

时间:2014-07-30 09:25:07

标签: gcc version static-libraries

假设您有一个由另一个人使用gcc构建的静态库,并且您想要找出用于编译的gcc的版本号。有没有简单的方法从库文件中提取这些信息?

我已经尝试过readelf,但到目前为止我使用的所有开关都没有导致gcc版本号。

2 个答案:

答案 0 :(得分:4)

这将记录在DWARF调试信息中的DW_AT_producer属性中。因此,如果您有调试信息,请尝试以下方法:

objdump -Wi yourlibrary.a|grep "DW_AT_producer"

我没有看到此属性的任何官方文档,因此您可能需要检查...

答案 1 :(得分:3)

感谢@ dbrank0我可以从静态库中检索gcc版本信息。这里提供了有帮助的解决方案:https://stackoverflow.com/a/9673793/3868995
虽然readelf -wi <library>仅列出了库中包含的文件,但strings -a <library> |grep "GCC: ("完成了我的工作。谢谢!