【发布时间】:2023-03-31 03:20:01
【问题描述】:
我有两个通过 'objcopy -O binary' 从各自的 ELF 文件生成的二进制文件。 ELF 文件是用 arm-none-linux-gnueabi 工具链构建的;一个来自 linaro gcc 4.6.2,另一个来自 codesourcery gcc 4.6.3。
我通过 Uboot 将二进制文件加载到内存中。虽然使用 Linaro 构建的程序按预期执行,但使用 codesourcery 构建的程序会崩溃(很可能是这样),但 Uboot 提示符上没有错误,但程序似乎挂起。
使用各个工具链的 binutils 中的“arm-none-linux-gnueabi-readelf -S”并没有显示文件之间的太大差异,除了地址偏移。在我尝试在目标上进行运行时调试之前,是否有任何工具/技术可以帮助解决这种情况。
谢谢!
【问题讨论】:
-
这两个编译器非常密切相关。 CodeSourcery 有一些 Linaro 选择不使用的补丁。这可能是不同的配置。
标签: arm elf binutils codesourcery