我有一个mips格式的二进制文件。我能够反汇编它,在mips中进行我想要的汇编文件更改。现在我想再将它组装回bin文件中。我正在使用cygwin并且正在尝试使用ar实用程序。
这是原始对象转储:
$ objdump -b binary -h test.bin
test.bin: file format binary
Sections:
Idx Name Size VMA LMA File off Algn
0 .data 00200004 00000000 00000000 00000000 2**0
CONTENTS, ALLOC, LOAD, DATA
我还有汇编文件(test.asm),其中包含test.bin文件中的mips指令。
然后我试图通过以下方式组装它:
ar -q test2.bin test.asm --target=elf32-big
和
ar -cr test2.bin test.asm --target=elf32-big
但是在这两种情况下我只得到一个包含程序集文件内容的bin文件。任何人都可以帮助解决我错过的问题,将其重新组合成elf32-big二进制文件吗?
先谢谢
答案 0 :(得分:2)
为此,您需要一个MIPS汇编程序。如果你有一个完整的gcc MIPS交叉编译器,汇编程序的名称应该是mips-as
或as
。
实际上,用mips-gcc
编译它可能更容易,它会为你调用汇编器和链接器。