2014-09-08 6 views
0

У меня есть двоичный файл в формате mips. Я смог разобрать его, внести изменения, которые я хотел в файл сборки в mips. Теперь я хотел бы снова собрать его в файл bin. Я использую cygwin и пытаюсь сделать это с помощью утилиты ar.Как собрать файл сборки mips

Это оригинальный объект свалка:

$ 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.

Затем я попытался собрать его:

ar -q test2.bin test.asm --target=elf32-big 

и

ar -cr test2.bin test.asm --target=elf32-big 

Но в обоих случаях я только получить бен файл с содержимым файла сборки. Может ли кто-нибудь помочь в том, чего мне не хватает, чтобы собрать его обратно в двоичный файл elf32?

Спасибо заранее

ответ

2

Чтобы сделать это, вам нужна программа на ассемблере MIPS. Если у вас есть полный кросс-компилятор gcc MIPS, имя ассемблера должно быть примерно mips-as или as.

На самом деле, было бы проще скомпилировать его с помощью mips-gcc, в котором вы будете использовать ассемблер и компоновщик.

+0

Будет ли это компилироваться из файла ASM? У меня нет исходного кода. Благодарю. – user3657279

+0

Да, есть способ получить gcc для компиляции ASM-файла. Вы должны начать с переименования вашего файла в '.s' и подавать его в GCC как вход обычным способом. Однако на этом пути может быть много трудностей; будьте готовы исправить синтаксис вашего файла сборки, добавить отсутствующие директивы и тому подобное. –

Смежные вопросы