【发布时间】:2012-10-13 00:08:45
【问题描述】:
我有一组来自 ARM 的 .s 文件,它们在 ARM 工具链上运行,但我们使用的是 gnu 工具链。
是否有将程序集从一种格式转换为另一种格式的转换脚本/工具/方法?手动操作似乎...很危险。
【问题讨论】:
-
如果您的工具链支持一种通用的对象格式,您可以用一种组合文件并用另一种反汇编。这样您就可以顺利到达目的地。
-
很遗憾,我们内部没有 arm 工具链。太贵了,所以大家都用gnu。如果我们有这个,那么你是对的,进行转换和拆卸两者并进行比较将是可行的方法。
-
我曾经在一个可以完全访问 ARM 工具链但需要向使用 GNU / GCC 的客户提供二进制库的地方工作。我们的解决方案涉及反汇编 arm 构建的库,并将结果通过大量 Perl 转换为 GAS 兼容程序集,并将结果推送到 GNU 工具链以构建最终的库。进行转换的项目是由团队共享的,并且是根据我对被告知内容的模糊记忆而做出的重大努力。