Я получаю следующую ошибку при разборке объекта с помощью приведенной ниже команды. Объектный файл создан для платформы MIPS.
$objdump -D -m MIPS myobjfile.o
Ошибка:
objdump: Can't use supplied machine MIPS
Фрагмент, который я прикрепляю для справки из objdump.c
const bfd_arch_info_type *inf = bfd_scan_arch (machine);
if (inf == NULL)
fatal (_("can't use supplied machine %s"), machine);
Не могли бы вы помочь мне получить правильный код сборки?
objdump -i
просмотреть список доступных архитектур? Вам вообще нужно указывать-m MIPS
, поскольку.o
уже является скомпилированным двоичным файлом? Может ли он определить архитектуру из объектного файла? - person e0k   schedule 19.02.2016objdump
и остальные GNU binutils имеют параметры времени компиляции для выбора поддерживаемых архитектур. Если вы используете это на машине, которая не поддерживает MIPS, вполне возможно, что поддержка MIPS не была включена. В этом случае вам придется загрузить или скомпилировать новый набор бинарных файлов binutils, который это делает. - person Nate Eldredge   schedule 19.02.2016