ARM64 架构的 Objdump

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

我在 ARM64 (aarch64) 架构的 Ubuntu 中遇到了这个错误,其中 Objdump 不想运行。 以下命令“objdump -d 文件名”的错误消息:

filename: file format elf64-little
objdump: can’t disassemble for architecture UNKNOWN!

我不确定 objdump 是否可以在 Aarch64 架构上运行。有人有什么想法吗?或者还有其他命令可以反汇编 ETF 文件吗?

assembly arm64 objdump binutils ctf
1个回答
0
投票

GNU Binutils 只能处理构建时选择的一种架构。在 AArch64 Linux 系统上,系统

objdump
命令将为 aarch64-linux-gnu 对象文件配置,但事实并非如此。如果您安装了
x86-64-linux-gnu-objdump
交叉工具链,则可以使用它。

但是您可能已经安装了一个可以处理各种架构的反汇编程序:

llvm-objdump -d

LLVM 可以(并且确实)将对多个目标的支持构建到一个工具版本中。

llvm-objdump
将简单地自动检测架构并反汇编。 (
clang
编译任何配置为默认使用的目标,通常是本机目标。但是
clang -c -target mips
可以工作,例如,至少对于不需要MIPS特定标头或库来链接的东西.)

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