基于ARM开发板的内核镜像编译(Linux平台)

基于ARM开发板的内核镜像编译(Linux平台)

PS:开始前一定得安装交叉编译器,博主这用的是4.6.4的版本

①获取内核源码并更改

在购买开发板时厂家一般会附有关于该开发板的一些资料,其中应该就包括开发板的内核源码,在获得内核源码后,进行需要的改动后即可开始进行编译。
使用tar vxf *.tar.bz2命令对源码包进行解压后即可按需更改,这里博主使用版本的是kernel-3.4.39,所以是。

tar vxf kernel-3.4.39_v4_mipi.tar.bz2

在这里插入图片描述

②开始制作镜像文件

在获得并按照需求更改内核源码后,使用make distclean清除不需要的设置,使其恢复最初状态,放置自带的配置影响自身需要。

make distclean

然后使用ls命令查看*/arch/arm/configs/目录下该源码支持的版本,找到你自己开发板的预制配置。

ls arch/arm/configs/


博主的是x6818平台,所以以x6818_defconfig为例。
使用命令make x6818_defconfig选定配置,出现configuration written to .config字样则为选定成功

make x6818_defconfig

在这里插入图片描述
选定成功后即可生成镜像了,镜像有zImage和uImage等格式,博主使用的是uImage来编译,所以使用make uImage命令来生成uImage镜像文件。

make uImage

如果是第一次编译的话,会编译的时间长一点出现如图的滚屏在这里插入图片描述
在出现Image arch/arm/boot/uImage is ready字样后,代表编译完成。
在这里插入图片描述
之后进入arch/arm/boot目录,新建文件夹,把uImage复制到其中进行操作。

cd arch/arm/boot/
mkdir test
cp uImage test/
cd test

在这里插入图片描述
使用make_ext4fs -s -l 67108864 -a boot boot.img ./ 命令使uImage转换成boot.img
在这里插入图片描述

PS:此处若出错,则可能是缺少组件造成的,使用sudo apt-get install android-tools-fsutils命令进行安装后再尝试即可

ls查看后文件夹内确实有boot.img文件了
在这里插入图片描述

③烧录镜像到开发板

博主使用的方法是把文件导出到windows目录下使用OTG方式进行烧录。
使用串口线链接开发板和PC,运行开发板时进入BootLoader模式,输入fastboot指令进入烧录模式,然后使用OTG数据线链接开发板和PC,在PC上打开powershell或者cmd,进入boot.img所在目录,使用fastboot flash boot .\boot.img命令进行烧录。
在出现finished. total time:*s的字样后表示镜像烧录完成。

至此,完成基于ARM开发板的内核镜像编译和烧录


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部