使用MinGW编译交叉编译器以编译内核

时间:2012-04-29 09:57:16

标签: c compilation operating-system kernel cross-compiling

我正在寻找一种在Windows上编译业余爱好者编写的内核和微操作系统的方法,到目前为止,我已经在所有论坛和其他类似的地方找到了“构建交叉编译器”的建议。不幸的是,我现在缺乏知识,所以有人可以告诉我如何使用MinGW编译GCC / Binutils以运行64位Windows 7安装吗?谢谢你的时间,Erkling。

1 个答案:

答案 0 :(得分:1)

将gcc编译为交叉编译器应该相当简单,但我从未在Windows上尝试过它。

要构建为交叉编译器,需要使用--host=<host_os>--target=<target_os配置gcc,其中<host_os>是编译器将运行的平台(在您的情况下为Windows)和{{ 1}}是您要定位的平台。正如你所说它是一个业余爱好者,它可能是<target_os>或类似的。

http://wiki.osdev.org/GCC_Cross-Compiler有更深入的信息。给那个页面一个去看看它是否有帮助。在Windows上使用此方法应该像使用GCC安装Cygwin以及下载和构建binutils和gcc一样简单。

修改

通过使用1586-elf去除用objcopy编译的PE文件解决了这个问题。如果您想要的只是一个平面二进制文件,那么这可能是您的选择。