1.更改buildroot
- 在SDK根目录下使用
./build.sh buildroot-config进入配置页面 - 在buildroot目录下使用
make menuconfig或直接改配置文件 - 改完配置之后,保存配置到
LinuxSDK/rk3576_linux6.1_release/buildroot/configs/rockchip_rk3xxx_defconfig
1.1 增删文件系统软件,更改文件系统大小
- 使用命令进入配置界面后,进入
Target packages目标安装包,就是安装在文件系统的软件、库等文件。这里可以删除不用的软件包,比如chromium浏览器,测试文件等,也可以配置软件安装包,音频、压缩包、字体、通用软件比如QT、LVGL等,达到更改文件系统大小的目的


1.2 个性化文件系统
System configuration主要修改系统配置,比如主机名字,密码等在此修改。

- 如下图,可以在图形界面里配置系统设置,比如主机名,欢迎语,密码等

1.3 注意事项
- 下图是默认配置文件,不能带有空格,而
make menuconfig生成的.config是带空格和注释的,所以没法直接替换保存用,那么我一般都是生成.config后对照更改配置名添加到这个默认配置中,从下面可以看出主机名字、密码、编译后覆盖文件夹、相机、音频、GPU等文件配置 - 为什么要这样做,因为
buildroot编译脚本从这个默认配置生成.config再去编译整个系统,直接中止编译改.config然后再编译是不行的,buildroot会提示配置文件改变,让你删除整个文件系统的编译重新来过

注意如果使用buildroot默认构建的QT5.15,那么需要把Wayland也编译,因为buildroot系统的QT依赖此模块,如果想去掉可以使用自己编译的QT,此时可以去掉buildroot的QT与Wayland配置,使用linuxfb直接显示自己编译的QT即可,即在profile中增加export QT_QPA_PLATFORM=linuxfb


2.向文件系统增加文件,修改默认文件
2.1 在文件系统编译时添加修改
- 在
LinuxSDK/rk3576_linux6.1_release/buildroot/system/skeleton目录下,可以放在文件系统编译完成后想要打包进去的文件,比如自己编译的QT库文件,脚本,应用等,注意很多系统文件是带默认值的,即编译完成后覆盖,在此处添加或者修改的系统文件编译后会被覆盖原文件
2.2 文件系统编译完成后添加修改
在LinuxSDK/rk3576_linux6.1_release/buildroot/board/rockchip/rk3576/fs-overlay目录下,文件覆盖等级会更高,如果在skeleton更改后系统并未发生变化,是因为有些文件在脚本中配置,那么需要在fs-overlay目录中去创建此文件覆盖,因为其会在全部文件系统编译完成后覆盖一次,比如说etc/inittab的串口登录配置在脚本中生成,发生在skeleton之后,那么就得在fs-overlay中去添加文件覆盖

评论