menuconfig 语法

menuconfig 语法menuconfig语法在Kconfig中定义的配置宏,前缀都没有CONFIG_,只有编译内核时,自动生成autoconf.h才会出现前缀.如果XX_defconfig板卡配置文件中定义新的宏=y时,而在Kconfig并没有声明它,则内核编译出来的autoconf.h里也不会定义它的.如果XX_defconfig板卡配置文件中没有设置CONFIG_MODULES=y则编译makemodules时将会失败,而m

大家好,又见面了,我是你们的朋友全栈君。


  • Kconfig 中定义的配置宏,前缀都没有 CONFIG_ ,只有编译内核时,自动生成 autoconf.h 才会出现前缀.
  • 如果 XX_defconfig 板卡配置文件中定义新的宏=y 时,而在 Kconfig 并没有声明它,则内核编译出来的 autoconf.h 里也不会定义它的.
  • 如果 XX_defconfig 板卡配置文件中没有设置 CONFIG_MODULES=y 则编译make modules时将会失败,而 make menuconfig 时, Kconfig 中的 tristate 参数也会被读写为 bool 参数(也就是不能设置m)
名词 说明
config 一个选项
default 默认配置项
help help 提示信息专用
prompt 提示信息
comment 相当于一行说明
choice 单选框, choice 中的 config 参数只能b ool 或 tristate
endchoice choice 配对使用
depends on 依赖项
select 反依赖项
range 数据范围 range 0 100 表述数据范围 0~100
if 判断
endif if 配对使用
menu 进入下个界面的菜单, 点击Enter键就能够进入这个menu所对应的界面
endmenu 与menu配对使用
menuconfig 可选的菜单,先择它,它就相当于成了

类型

类型
bool y – 默认选中
n – 默认不选
tristate y – 将驱动编译进内核镜像
n – 不编译
m – 将驱动编译为ko形式
string 普通字符串类型
hex 十六进制形式
int 十进制整数
  • prompt 配置项的提示
  • default 表示默认值

基本的类型

config AAA
    bool "config AAA"
    default y
config BB
    int "config BB"
    default 123
config CC
    string "config CC"
    default 123
config DD
    hex "config DD"
    default 0x123
config EE
    tristate "config EE"
    default y
  • 因为我的 tristate 没有启用, 所以为默认为了 bool 类型
    menuconfig 语法

备注 : 如果 退格 不能删除 请使用 Ctrl + 退格


menu

menu "this is menu info"
comment "*** menu config ***"
config AAA
    bool "config AAA"
    default y
config BBB
    bool "config BBB"
    default n
config CCC
    bool "config CCC"
    default n
endmenu

menuconfig 语法


menuconfig

comment "*** menuconfig config ***"
menuconfig AAA
    bool "using AAA"
if AAA
config BBB
    bool "using BBB"
    default y
endif

menuconfig 语法


select

config AAA
    bool "config AAA"
    select BBB          # AAA 被选中后, BBB 也被选中
    default y
config BBB
    bool "config BBB"
    default y

menuconfig 语法


depends

config XXX
    bool "config XXX"
    default y
config YYY
    bool "config YYY"
    depends on XXX      # 表示依赖, XXX 被选中 才会有 YYY
    default y

menuconfig 语法


choice

choice
    prompt "choice entry"       # 作为该单选框入口点的标签
    default y
    default AAA                 # 默认选择 AAA 配置项

config AAA
    bool "config AAA"
    help
        AAA help info
config BBB
    bool "config BBB"
    help
        BBB help info
config CCC
    bool "config CCC"
    help
        CCC help info

endchoice

menuconfig 语法


引用其他文件的 Kconfig

  • dir/Kconfig 文件内容
config AAA
    bool "config AAA"
    select BBB          # AAA 被选中后, BBB 也被选中
    default y
config BBB
    bool "config BBB"
    default y
  • ./Kconfig 文件内容
source service/elog/Kconfig

menuconfig 语法


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/133202.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号