使用menuconfig配置milkv duo linux kernel
前言
官方的buildroot SDK包含很多不同的部分如uboot,linux kernel,buildroot,opensbi. 这些都有自己的配置目录,直接运行build.sh脚本来生成img的时候,build.sh会把对应部分的config目录下的config文件拷贝到其编译的代码所在的目录然后进行编译,所以如果要使用menuconfig配置linux kernel的话就需要先找到build.sh使用的kernel的配置文件,然后拷贝到存放kernel代码的目录,然后menuconfig修改config,最后在拷贝回去,只有拷贝回去build.sh脚本才能使用。更改才会生效,具体操作如下
具体操作
下面是修改duo256m的示例,带~号的行为输入的命令(命令不包括~)
第一步找到duo256m linux kernel配置文件存放的地方
build/boards/cv181x/cv1812cp_milkv_duo256m_sd/linux/cvitek_cv1812cp_milkv_duo256m_sd_defconfig
拷贝到linux kernel目录下,注意改成.config
~ cp build/boards/cv181x/cv1812cp_milkv_duo256m_sd/linux/cvitek_cv1812cp_milkv_duo256m_sd_defconfig linux_5.10/.config
切换到linux目录进行menuconfig
~ cd linux_5.10/
~ make ARCH=riscv menuconfig
如下图:
需要修改或开启kernel选项的话可以使用/键进行搜索,如CONFIG_CGROUP_FREEZER 按/然后输入cgroup_freezer就可以进行查找,其中location表示选项的路径位置,prompt为选项的名字,结果如下
修改后save保存,再把当前目录下的.config文件拷贝到原来build.sh使用的linux kernel的config目录,注意名字也要改回去
~ cp .config ../build/boards/cv181x/cv1812cp_milkv_duo256m_sd/linux/cvitek_cv1812cp_milkv_duo256m_sd_defconfig
再回到buildroot_sdk目录,执行build.sh就可以了
~ cd ..
~ ./build.sh milkv-duo256m