我有一台 x86 开发机器和为 mips 开发内核模块。我想反汇编一个例程来查找模块的问题。
所以我的问题是“我可以在 x86 机器上拆解它还是我必须获得 MIPS 开发机器?”
我试过了,但它在 x86 指令集中反汇编。
你基本上需要某种形式的交叉编译。交叉编译器将允许您在主机(在您的情况下为 x86)上为目标机器(在您的情况下为 MIPS)编译。因此,您将能够从您的 x86 机器生成 MIPS 二进制文件。此外,您还将获得与编译器相关的所有其他工具,例如objdump
. 在这里,您可以获得有关如何为 GCC 构建交叉编译器的指南。
假设您正在使用objdump
反汇编二进制文件,您可能不需要构建交叉编译器。objdump
属于binutils并且可能只编译 binutils 以使用 MIPS 作为目标(我从未尝试创建 binutils 的跨平台构建,所以我不是 100% 确定)。
编辑:我刚刚再次阅读标题,并意识到您正在使用gdb
. 在这种情况下,我相信您需要创建一个完整的交叉编译器,并创建一个跨平台版本的gdb
.