定制GDK8内核

本文针对GDK8硬件介绍构建GDK8内核的基本步骤。
环境 幽兰代码本

构建GDK8内核

下载内核源代码:https://github.com/gedulab/gdk8k

kernel.tar.gz放在空间足够大的目录下
切记一定使用tar命令解压
tar -xvf kernel.tar.gz
解压完成后进入kernel目录
cd kernel
进入管理员模式
sudo su

准备环境

执行以下命令

sudo apt update
sudo apt install libssl-dev
sudo apt install liblz4-tool     //构建过程中环境不同(我用的幽兰)可能会缺少一些额外的依赖
                                 //请大家缺啥补啥
sudo apt-get install gcc-aarch64-linux-gnu   
export CROSS_COMPILE=aarch64-linux-gnu-

开始构建(此过程会比较久,大概40min)

执行以下命令

make clean
make ARCH=arm64 rockchip_linux_defconfig    //有warning正常现象
make ARCH=arm64 gdk850.img -j8 LOCALVERSION=-yanzi

遇到错误

如下图之类的:

就在makefile中的461行以下添加对应的代码的(对应关系上下图已用红色标出)

修改完保存然后重新执行make

构建完成

更新内核文件

我是在幽兰构建的GDK8内核,build完成后把生成的boot.img移动到GDK8中
GDK8的内核文件也是保存在单独的分区中,可以通过DD命令进行快速更新,执行dd命令千万要谨慎,不要把位置和大小参数弄错, 可以参考WiKi文章:[烧录镜像文件]https://www.nanocode.cn/wiki/docs/gdk8_primer/primer_gdk8_img

更新命令如下:

od -c file | more
烧录前需要确认镜像文件与分区是否一致(确认第一行即可)。
dd if=boot.img of=/dev/mmcblk$(X)p4 seek=0
img_path:待烧录镜像文件的位置;对于内核文件而言,对应的文件为boot.img,并非kernel.img。
/dev/mmcblk2p4:GDK8的内核文件一般在mmcblk2p4分区内;烧录前应进行确认。
作者:李梓涌  创建时间:2023-08-17 09:36
最后编辑:李梓涌  更新时间:2024-03-12 10:45