Ghidra DWARFAnalyzer Error

在用Ghidra 分析使用arm-none-eabi-gcc 编译的程序时, 报错

Error during DWARFAnalyzer import: ghidra.app.util.bin.format.dwarf4.DWARFException: Only DWARF version 2, 3, or 4 information is currently supported (detected 5).

原因

Ghidra 的 DWARFAnalyzer 插件, 目前只支持 DWARF 的版本是2,3,4, 检测到当前程序使用的DWARF 是版本5, 所以无法解析

解决办法

解决办法1

升级到Ghidra 11.1 或者更新版本

解决办法2

查看 arm-none-eabi-gcc 文档

可以看到当前版本的arm-none-eabi-gcc 默认使用的是 dwarf-5
编译时加上 -g -gdwarf-4 不起作用, 于是考虑降级arm-none-eabi-gcc 版本

降级 arm-none-eabi-gcc

经试验, 下载 旧版工具链
这个页面的arm-none-eabi-gcc 都能正常工作, 即10.3.1 及之前的版本都可以用
例如下载 arm-none-eabi-gcc-10.3

重新编译生成elf 再拖到Ghidra 分析就不会报错了

Licensed under CC BY-NC-SA 4.0