本帖最后由 yono 于 2024-9-11 17:27 编辑
gcc 的 map 文件实在是太乱了,东西非常多,而且不以实际地址排序,不利于人工分析。
所以做了一个小脚本用于处理和按照地址排序符号内容。
gccMapView.exe
(5.52 MB, 下载次数: 15)
源码地址在这里
stbanana/gcc-elf-link-sort: A tool for sorting the symbols of .elf by address (github.com)
打包成 exe 文件并命名 例如 gccMapView.exe 。 在终端使用类似如下命令即可使用。 gccMapView.exe E:\PY32_PROJECT\gccMapView
需要传参一个目录地址给程序,程序会遍历这个个文件目录,为每个 .elf 文件自动生成 name.symbols :原版 objdump --syms 命令生成的符号表。 name.symbols.view :经过地址排序和格式化后的符号表。
如果不使用命令行,将 .exe 与 .elf 文件放在同一文件夹下,双击 .exe 也可以使用。自动遍历 .exe 所在的目录,为每个 .elf 文件自动生成。
效果如下 原版map
软件输出的文件(以ASM语法着色)
|