第一次执行是为了下载交叉编译工具和源码,切记第一次执行过程中会下载github源码,所以一定要环境好,确保下载不出问题
- 指定目标架构arm64,命令
export ARCH=arm64
,可以使用printenv ARCH
,查看是否设置成功 - 下载内核源码和交叉编译工具,第一次执行仅仅为了下载,当然你也可以自行下载,然后关闭更新即可,执行
./build.sh
,选择Kernel package
,选择Do not change the kernel configuration
,选择适合自己的开发板,我的是orange5b
,选择ubuntu版本,5.10选legacy
,6.1选current
,执行完以后发现目录下有了内核kernel
和 交叉编译工具toolchains
以及配置文件目录userpatches
- 使用
make menuconfig
UI界面或者在orangepi-build/kernel/orange-pi-5.10-rk35xx/.config
配置文件修改内核配置即可,如果修改了内核配置,则需关闭自动更新,编辑vim userpatches/config-default.conf
设置IGNORE_UPDATES="yes"
- 修改完内核后,进行编译
./build.sh
,根据你的板子选择即可,也可以直接用命令配置./build.sh BOARD=orangepi5b BRANCH=legacy BUILD_OPT=kernel KERNEL_CONFIGURE=no
- 编译完成后会在
orangepi-build/output/debs
生成deb文件,dtb的deb是设备树,headers是头文件,image是内核,我们只需要安装内核即可,先卸载原内核apt purge -y linux-image-legacy-rockchip-rk3588
,安装新内核dpkg -i linux-image-legacy-rockchip-rk3588_1.0.8_arm64.deb
- 重启
reboot
验证内核是否可以用