1.首先下载内核,可以从这里https://www.kernel.org/下载最新的内核
2.解压后,进入内核根目录,清除内核中间文件,配置文件,我下载的是linux-3.11.2
#cd linux-3.11.2
#make distclean
3.选择参考配置文件:产品发布时同时会发布一个参考配置文件,通常的参考配置文件位于arch/<cpu>/configs/目录下,这里选择s3c6400_defconfig作为参考配置文件
#cp arch/arm/s3c6400_defconfig .config
4.内核的配置
#make menuconfig ARCH=arm CROSS_COMPILE=arm-linux-
指定架构为arm 指定工具链为交叉编译工具链arm-linux-
保存、退出,这里先使用默认的内核配置,等学会内核移植了,再来修改配置
5.编译内核
#make uImage ARCH=arm CROSS_COMPILE=arm-linux-
内核编译大概需要几分钟,编译完成后,产生内核映象产uImage位于arch/arm/boot/目录下,但出现了如下情况:
分析原因可以发现,mkimage命令没有发现,在u-boot学习过mkimage是用来产生u-boot格式映象文件的,所以从u-boot源代码(编译之后的)中把mkimage复制到/bin目录下。
再次编译内核就可以了,出现下图提示就表示编译成功了。