ARM64(aarch64)Ubuntu下objdump报错的解决与替代工具咨询
解决ARM64(aarch64)Ubuntu下objdump无法反汇编的问题
检查objdump的架构支持
先确认你的objdump是否适配aarch64架构,执行:
objdump --version
如果输出里找不到aarch64相关内容,说明你安装的是其他架构的binutils(比如x86交叉版本),需要替换为ARM64原生版本。
安装ARM64原生binutils
执行以下命令安装适配aarch64的binutils包:
sudo apt update sudo apt install binutils-aarch64-linux-gnu
安装完成后,使用带架构前缀的命令反汇编:
aarch64-linux-gnu-objdump -d filename
手动指定架构参数
如果确认objdump本身支持aarch64,但仍报错,可手动指定架构:
objdump -d -m aarch64 filename
替代反汇编工具
如果上述方法无效,试试这些工具:
- readelf:先验证目标ELF文件的架构是否为aarch64:
readelf -h filename | grep Machine - radare2:多功能逆向工具,支持多架构,安装后执行:
r2 -A filename aa # 分析所有函数 pdf # 反汇编当前函数(或指定函数如 pdf @main) - gdb:通过调试器反汇编,启动后加载文件:
gdb filename disas main # 反汇编main函数,可替换为其他函数名
内容的提问来源于stack exchange,提问作者el Kusn
相关产品推荐
相关产品推荐

