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 语法


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

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

(0)
上一篇 2022年6月9日 下午4:36
下一篇 2022年6月9日 下午4:36


相关推荐

  • csdn社区内容创作规范_内容不符合规范

    csdn社区内容创作规范_内容不符合规范良好的社区环境,需各位创作者与CSDN共同维护建立!

    2026年1月20日
    5
  • C++面向对象程序设计_面向对象程序设计的基本机制是

    C++面向对象程序设计_面向对象程序设计的基本机制是一、面向过程和面向对象的区别。面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为二、面向过程和面向对象的特征。面向过程是把过程作为编程的思路,如程序流程图,但是面向对象是把实体当作对象,如自行车是一个实体,就…

    2022年8月18日
    7
  • 梯度下降与随机梯度下降概念及推导过程「建议收藏」

    梯度下降与随机梯度下降概念及推导过程「建议收藏」接前一章:常用算法一多元线性回归详解2(求解过程)同这一章的梯度下降部分加起来,才是我们要讲的如何求解多元线性回归.如果写在一章中,内容过长,担心有的同学会看不完,所以拆分成两章.[坏笑]上一章中有提到利用解析解求解多元线性回归,虽然看起来很方便,但是在解析解求解的过程中会涉及到矩阵求逆的步骤.随着维度的增多,矩阵求逆的代价会越来越大(时间/空间),而且有…

    2025年10月25日
    4
  • 线程的用户态和内核态_缺页发生在用户态还是内核态

    线程的用户态和内核态_缺页发生在用户态还是内核态(1)用户态和内核态的概念?—>内核态:CPU可以访问内存所有数据,包括外围设备,例如硬盘,网卡.CPU也可以将自己从一个程序切换到另一个程序—>用户态:只能受限的访问内存,且不允许访问外围设备.占用CPU的能力被剥夺,CPU资源可以被其他程序获取(2)为什么需要用户态和内核态?—>由于需要限制不同的程序之间的访问能力,防止他们获取别的程序的内存数据,…

    2026年1月20日
    4
  • grok的私密聊天记录在哪查看

    grok的私密聊天记录在哪查看

    2026年3月15日
    2
  • linux系统软件安装和卸载的常见方法_ubuntu如何卸载软件

    linux系统软件安装和卸载的常见方法_ubuntu如何卸载软件文章来源笔者学习Linux记录的《linux笔记》笔者所用版本为Ubuntu———————————————————————————————————————————1.在线安装1.1apt-get(1)sudoapt-getinstall软件名称在线下载安装(2)sudoapt-getr…

    2025年10月15日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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