前面我们已经制作了uboot,接下来是制作kernel。
首先进入内核源码,执行make distclean.清除先前编译产生的文件。
注意配置内核的时候多了一个ARCH=arm的条件。
回车之后会进入arm的配置菜单:
就像我们前面配置linux内核一样,我们也会去找一个配置好的配置文件:
把config-file拷贝到我们的内核代码目录下:
然后把config-file拷贝成.config.
重新进入配置界面,发现配置生效了。
接下来就是内核的编译:
在编译的过程中会出现这样的一个错误:
这是因为,我们的可执行文件,都有一个文件头,是mkimage帮我们加上去的。现在系统找不到它。他是在uboot的tools文件下:
我们把该工具在编译好的uboot的tools里面拷贝到/bin目录。Cp mkimage /bin重新编译:
Make uImage ARCH=arm CROSS_COMPILE=arm-linux-
如上所示,编译完成,生了uImage。接下来,把他烧写到开发板启动。
最后烧写错误:
根据提示,我也不知啥zImage。就烧写成zImage。
生成zImage:
然后把他烧写到开发板,运行:
后来,我再次制作uImage成功,成功烧写了:
时间: 2024-12-25 20:44:16