2

我有一台 x86 开发机器和为 mips 开发内核模块。我想反汇编一个例程来查找模块的问题。

所以我的问题是“我可以在 x86 机器上拆解它还是我必须获得 MIPS 开发机器?”

我试过了,但它在 x86 指令集中反汇编。

4

1 回答 1

5

你基本上需要某种形式的交叉编译。交叉编译器将允许您在主机(在您的情况下为 x86)上为目标机器(在您的情况下为 MIPS)编译。因此,您将能够从您的 x86 机器生成 MIPS 二进制文件。此外,您还将获得与编译器相关的所有其他工具,例如objdump. 在这里,您可以获得有关如何为 GCC 构建交叉编译器的指南。

假设您正在使用objdump反汇编二进制文件,您可能不需要构建交叉编译器。objdump属于binutils并且可能只编译 binutils 以使用 MIPS 作为目标(我从未尝试创建 binutils 的跨平台构建,所以我不是 100% 确定)。

编辑:我刚刚再次阅读标题,并意识到您正在使用gdb. 在这种情况下,我相信您需要创建一个完整的交叉编译器,并创建一个跨平台版本的gdb.

于 2012-07-17T12:34:08.707 回答