0


firefly开发板RK3588内核裁剪的详细步骤

一、下载linux SDK

可能使用到工具安装:

sudoapt-getinstall repo gitsshmake gcc libssl-dev liblz4-tool \expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib
unzip\
device-tree-compiler ncurses-dev \

这个官网没有提供,因为比较大,回头我上传一份
rk3588_repo_sdk_v1.0.2a.7z
然后将此压缩包传到linux服务器或者虚拟机;
下载以后,输入以下命令:

7z x rk3588_repo_sdk_v1.0.2a.7z
.repo/repo/repo sync-l
.repo/repo/repo start rk3588/firefly --all

如果提示7z或者python不存在,直接安装一个就行了,安装方法自行搜索;

二、内核裁剪

1.生成.config配置文件

基本的配置文件生成命令:

cd rk3588_repo_sdk_v1.0.2a/kernel/
makeARCH=arm64 rockchip_linux_defconfig firefly-linux.config

此时,我们得到了一个官方默认的配置文件,如果要进行裁剪则需要输入:

makeARCH=arm64 menuconfig

此时会打开一个图形化界面,就是我们熟悉的内核裁剪界面了,修改后,保存到.config,即完成了内核裁剪;

2.内核编译

完成了第一步,如果我们按照官网的文档,直接运行:

cd rk3588_repo_sdk_v1.0.2a
./build.sh extboot

就会直接将我们刚刚配置过的.config文件覆盖,我们裁剪的内核也将被重置!
我们需要做的就是修改build.sh脚本,
在这里插入图片描述
将773行注释掉!
然后再修改位于

/rk3588_repo_sdk_v1.0.2a/kernel/scripts/kconfig
的文件confi.c
在这里插入图片描述
将if的判断条件改成1,即不再判断config文件是不是发生了改变,
此时继续输入命令:

./build.sh extboot

注意,编译之前还需要将根文件填充一下,可以从官网下载完整的根文件也可以自己裁剪;

7z x ubuntu-aarch64-rootfs.7z
mkdir ubuntu_rootfs
mv ubuntu-aarch64-rootfs.img ubuntu_rootfs/rootfs.img

即可完成编译;

4.内核烧录

将kernel目录下的boot.img和位于rk3588_repo_sdk_v1.0.2a/rockdev下的parameter.txt(是个软连接,需要下载真正的文件)文件下载到windows;
打开官方的烧录工具:
在这里插入图片描述
在这里插入图片描述
点击 run即可完成内核更新烧录;

标签: linux 运维 git

本文转载自: https://blog.csdn.net/weixin_44244400/article/details/128922170
版权归原作者 蒙蒂锅巴 所有, 如有侵权,请联系我们删除。

“firefly开发板RK3588内核裁剪的详细步骤”的评论:

还没有评论