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)


相关推荐

  • 二进制数的运算方法

    二进制数的运算方法1.二进制数的算术运算二进制数的算术运算包括:加、减、乘、除四则运算,下面分别予以介绍。(1)二进制数的加法根据“逢二进一”规则,二进制数加法的法则为:0+0=00+1=1+0=11+1=0 (进位为1)1+1+1=1(进位为1)例如:1110和1011相加过程如下:(2)二进制数的减法根据“借一有二”的规则,二进制数减法的法则为:

  • eWebEditor漏洞[通俗易懂]

    eWebEditor漏洞[通俗易懂]各位站长在使用eWebEditor的时候是否发现,eWebEditor配置不当会使其成为网站中的隐形炸弹呢?第一次发现这漏洞源于去年的一次入侵,在山穷水尽的时候发现了eWebEditor,于是很简单就

  • pycharm 格式化代码[通俗易懂]

    pycharm 格式化代码[通俗易懂]有时候将空格键和tab键混用,在windows上没什么事情,但是如果移动到linux就会有问题,所以我们在移动到linux上之前要先格式化一下代码:ctrl+alt+L可以格式化,但是和锁屏快捷键冲突。 也可以,先选中代码,使用快捷键 ctrl+alt+i 。 …

  • bat脚本执行命令_实用bat代码

    bat脚本执行命令_实用bat代码注意:编辑bat文件请使用ANSI编码(不然会出现中文乱码)1、语句注释rem命令行注释,可以回显(语句会在命令行中显示);::两个冒号,效果同上,但不会回显。(冒号后加任意非字母数字字符都可起到注释作用)2、暂停pause暂停,命令行中出现”请按任意键继续…”自定义暂停时的文本,如下:::pause>nul,隐藏原暂停文本echo这里是自定义文本!&…

  • zookeeper入门教程_kubernetes github

    zookeeper入门教程_kubernetes githubzookeeperwatcher架构zookeeper 配置中心分布式ID分布式锁集群搭建数据一致性协议:zab协议Zookeeper Leader选举Observer角色及其配置watcher架构客户端首先将Watcher注册到服务器,同时将Watch对象保存到客户端的Watch管理器中。当Zookeeper服务器监听到的数据发生变化时,服务器会通知客户端,接着客户端的Watch管理器会触发相关的Watcher来回调响应处理逻辑,从而完成整体的数据发布/订阅流程。javaAPIJava

  • 什么是前端框架与后端框架

    什么是前端框架与后端框架什么是框架框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。

发表回复

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

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