使用 GDB 在 x86 机器上进行 MIPS 反汇编;可能的?

Dee*_*pak 2 c x86 assembly gdb mips

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

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

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

bet*_*ido 5

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

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

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