了解Linux中静态库(.a)的十六进制转储的问题

问题描述 投票:0回答:1

我已经在Linux中将一个非常简单的C文件编译为.a文件,并且其中包含两个函数,我希望将这些函数的字节偏移量与“ nm”命令类似,但是我想自己编写此程序。我已将其转储以期望在开始时找到“魔术数”精灵,但事实证明它是“!”。我找不到在“!”处是否有解释字节的结构。我该如何进行?

static-libraries elf hexdump
1个回答
0
投票

ar存档的格式为well documented

期望在开始时找到“幻数”精灵

您会在偏移量60处找到第ELF个魔术字节,即在第一个AR文件头之后。但是,如果有特殊成员,则可能必须跳过它们,例如“存档索引”(由ranlib构建)。

© www.soinside.com 2019 - 2024. All rights reserved.