先参阅此,
https://blog.csdn.net/bcbobo21cn/article/details/115184184
这是在linux下编译linux内核,然后升级系统为新的版本;
WINDOWS下编译LINUX内核?
具体可以参照ZLG《嵌入式Linux开发教程(下册)》第1章。
只能用虚拟机,Linux内核使用大量的GCC拓展,而且整个工程是用makefile来控制;
在Windows下虽然有对应的GCC工具和make工具 但配置起来都比较麻烦!既然选择学习linux内核 那么linux下C语言编程和操作系统应该都有一定的基础 而且现在桌面版的linux系统已经很人性化 像fedora Ubuntu都很好用了 不需要繁杂的配置!
能否在windows下编译linux内核
Linux源代码可以在windows操作系统下编译。对于一般的c语言程序,代码的这种可移植性会受到一定的限制。
因为我们在编写程序时,会或多或少使用一些某些系统特有的函数库。
这是因为ANSI C是C语言的标准,但ANSI C几乎很难完成复杂程序的开发。任何C语言的编译器都在ANSI C的基础上扩充, 如TC,VC等都对ANSI C进行了扩充,加入了自己的规则和库之类的。所以他们之间一般不具有通用性。此外在各个操作系统上的应用程序通常要调用相应的操作系统提供的借口,这也为代码的跨平台建立了一层障碍。
内核程序不同于普通的代码,由于它处在一个比较接近底层的地位,因此不能随意使用其它第三方函数库。此外系统内核与一般应用程序不同,它的执行不依赖于任何操作系统(它本身就是一个操作系统),所以,只要我们的编译器可以生成x86的二进制代码,我们就可以在不同平台进行编译。Linux内核仅仅用汇编语言和语言编写的,没有使用任何第三方软件或者库函数,即由ANSI C编写,没有使用Linux函数库。
因此可以在windows下编译。