配置文件语法
编译时看的是 .config 文件,无论什么方式配置,最终就是为了得到该文件。
menuconfig 中看的选项来自 .in 文件,这是菜单模板文件。
source 引入的顺序,就是菜单显示的顺序。
当配置项没有提示语,说明它不是给用户手动配置的,它是被 depends on 或 select 用到的。
比如:
config HAS_SUBTARGETS
bool.in 文件解析:
单选模板
多选模板
choice
prompt "Target System" 菜单名称
default TARGET_sunxi 默认选项
reset if !DEVEL 当某个条件满足时重置选项
config TARGET_d1_h_nezha 选项名称
bool "d1-h-nezha" bool表示选择,可是可否,里面是展示给用户看的名称
select LINUX_5_4 select 选择该选项时关联其他配置
......
config TARGET_d1_h_nezha_min
bool "d1-h-nezha_min"
select LINUX_5_4
......
config TARGET_d1s_nezha
bool "d1s-nezha"
select LINUX_5_4
......
endchoice需安装依赖:
sudo apt-get install -y gawk libncurses5-dev libncursesw5-dev zlib1g-dev build-essential flex bison unzip file wget curl cpio rsync libssl-dev libelf-dev bc pkg-configmake menuconfig 内核菜单
make xconfig 基于 QT5 的 GUI 界面,一般的内核都不支持。
make menuconfig 如果出错,一般是两个原因:
libncurses5-dev 没安装
命令行界面太小或字体太大了