objdump:无法使用提供的机器 MIPS
objdump: Can't use supplied machine MIPS
使用以下命令反汇编对象时出现以下错误。目标文件是为 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);
你能帮我得到正确的汇编代码吗?
尝试使用大写字母 m。 $objdump -D -M MIPS myobjfile.o
[-M options|--disassembler-options=options]
你应该试试 mips-linux-gnu-objdump
。
我在我的 ubuntu 16.04 TLS 上将它用作 binutils-mips-linux-gnu 包的一部分。
您可以使用 apt-get 下载它:
$sudo apt-get install binutils-mips-linux-gnu
然后尝试 运行:
$mips-linux-gnu-objdump -b binary -m mips -D myobjfile.o
-b binary
代表二进制文件格式,它是可选的。
您应该访问 https://linux.die.net/man/1/x86_64-linux-gnu-objdump 以获取更多信息。
晚了一步,但这解决了我的问题,这个问题与你的问题相同,但适用于 ARM64(aarch64)。
如果您从源代码构建,您可以通过将 --enable-targets=all
传递给 ./configure
来启用所有目标架构:
git clone git://sourceware.org/git/binutils-gdb.git
cd binutils-gdb
./configure --enable-targets=all
make
这使得 objdump 可以与所有架构一起工作,包括 MIPS
这是来自@soulseekah post 此处:Using objdump for ARM architecture: Disassembling to ARM
使用以下命令反汇编对象时出现以下错误。目标文件是为 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);
你能帮我得到正确的汇编代码吗?
尝试使用大写字母 m。 $objdump -D -M MIPS myobjfile.o
[-M options|--disassembler-options=options]
你应该试试 mips-linux-gnu-objdump
。
我在我的 ubuntu 16.04 TLS 上将它用作 binutils-mips-linux-gnu 包的一部分。
您可以使用 apt-get 下载它:
$sudo apt-get install binutils-mips-linux-gnu
然后尝试 运行:
$mips-linux-gnu-objdump -b binary -m mips -D myobjfile.o
-b binary
代表二进制文件格式,它是可选的。
您应该访问 https://linux.die.net/man/1/x86_64-linux-gnu-objdump 以获取更多信息。
晚了一步,但这解决了我的问题,这个问题与你的问题相同,但适用于 ARM64(aarch64)。
如果您从源代码构建,您可以通过将 --enable-targets=all
传递给 ./configure
来启用所有目标架构:
git clone git://sourceware.org/git/binutils-gdb.git
cd binutils-gdb
./configure --enable-targets=all
make
这使得 objdump 可以与所有架构一起工作,包括 MIPS
这是来自@soulseekah post 此处:Using objdump for ARM architecture: Disassembling to ARM