【发布时间】:2018-01-04 22:35:15
【问题描述】:
我最感兴趣的是提取架构版本,即 v5、v5T 等。我一直在引用 Elf for the ARM Architecture Section 4.3.6 Build Attributes,这对我了解这一点很有帮助。我可以找到 .ARM.attributes 部分的开头,并且可以解析信息的第一个关键部分:Format-version、Section-length 和 vendor-name + null 字节,没问题。在那之后我有点失落。下面是我在使用arm-linux-gnueabi-gcc -march=armv5t -O myprog.c -o myprog 为 ARMv5T 架构编译的精灵上使用hexdump -vC 运行的快照。该部分的开始是 77f0b。
我们可以看到: 格式版本:A
节长度:0x29
供应商名称:“aeabi”
显然,5T 在 77f1C 以 ASCII 格式提供,但我不确定如何解释我需要解析以获得该值的标记。
注意:是的,我知道我可以使用一些工具来执行此操作,但我需要在我正在编写的应用程序中提取信息。它已经解析了必要的信息以实现这一目标。
额外问题:PowerPC 有类似的标签吗?我找不到任何支持文档。
【问题讨论】: