本文共 1146 字,大约阅读时间需要 3 分钟。
编译内核其实本质上就是熟悉流程与配置的更改,本文暂时只介绍流程,对于更改,以后详谈。
一点要注意 :需要先安装arm-linux-gcc 交叉编译器!切记!如果你有开发板,那么商家大多会给你资料,其中就有对应该开发板SOC的linux内核,如果里面没有对应的linux内核源码,那么本文不适合你了,你需要移植或自己找对应的内核源码。
既然已经获得了源码包,经过ubuntu下的tar xvf 命令解压后,就可以进入到文件夹中。
在进入之后第一步就是使用make distclean 清除一下,类似出厂设置,以防自带的配置影响你的需要。make distclean
之后查看你的arch/arm/configs/ 目录下的文件
ls arch/arm/configs/找到你的开发板的平台的预制配置,这个一般来说是厂家提供的。 以我的 x6818_defconfig 为例 使用命令 make x6818_defconfig
make x6818_defconfig在这一步过后,根据你的需求可以生成镜像了 我使用的是 uImage,所以 make uImage
make uImage
如果你是第一次,那么你需要漫长的等待,在不出错的情况下,你会看到这个画面
一般不会出错的啦,毕竟都是厂家搞好的。 在这一步之后,进入到boot目录里,创建一个文件夹,把uImage放入其中并执行cd arch/arm/boot/mkdir test cp uImage test/cd test/之后还要进行一步,就是吧生成的uImage变成boot.img 使用make_ext4fs -s -l 67108864 -a boot boot.img ./ 命令
make_ext4fs -s -l 67108864 -a boot boot.img ./
如果出现这个错误,那就乖乖安装就好了
乖乖安装。。。。sudo apt install android-tools-fsutils
再次执行
make_ext4fs -s -l 67108864 -a boot boot.img ./make_ext4fs -s -l 67108864 -a boot boot.img ./
这就成功了
使用ls 命令查看,在当前目录已经有boot.img 了 使用fastboot把boot.img烧录进去吧 使用开发板进去 bootloader 中输入 fastboot 之后插上OTG线,打开Powershell吧fastboot flash boot .\boot.img之后出现下图,之后就可以重启开发板了
因为之前有文件系统所以直接开机了,完事
转载地址:http://juewi.baihongyu.com/