menuconfig 图形化配置

menuconfig 图形化配置  uboot或Linux内核可以通过输入“makemenuconfig”来打开图形化配置界面,menuconfig是一套图形化的配置工具,需要ncurses库支持。ncurses库提供了一系列的API函数供调用者生成基于文本的图形界面  menuconfig重点会用到两个文件:.config和Kconfig,.config文件保存着uboot或Linux内核的配置项,使用menuconfig配置完uboot或Linux内核以后肯定要更新.config

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

  uboot 或 Linux 内核可以通过输入“make menuconfig”来打开图形化配置界面, menuconfig是一套图形化的配置工具,需要 ncurses 库支持。 ncurses 库提供了一系列的 API 函数供调用者生成基于文本的图形界面
  menuconfig 重点会用到两个文件: .config 和 Kconfig, .config 文件保存着 uboot或 Linux 内核 的配置项,使用 menuconfig 配置完 uboot或 Linux 内核 以后肯定要更新.config 文件。 Kconfig文件是图形界面的描述文件,也就是描述界面应该有什么内容,很多目录下都会有 Kconfig 文件。
  关于 Kconfig的详细语法介绍,可以参考 linux 内核源码(不知为何 uboot 源码中没有这个文件)中的文件Documentation/kbuild/kconfig-language.txt

一、Kconfig 语法简介

1.1、 mainmenu

  顾名思义 mainmenu 就是主菜单,也就是输入“make menuconfig”以后打开的默认界面

1.2、调用其他目录下的 Kconfig 文件

  和 makefile 一样, Kconfig 也可以调用其他子目录中的 Kconfig 文件,调用方法如下:
  source “xxx/Kconfig” //xxx 为具体的目录名,相对路径

1.3、 menu/endmenu 条目

  menu 用于生成菜单, endmenu 就是菜单结束标志,这两个一般是成对出现的。

1.4、 config 条目

  config 条目就是具体配置项。以 config 关键字开头,后面跟着的就是配置项名字。.config 文件中的“CONFIG_xxx” (xxx 就是具体的配置项名字)就是 Kconfig 文件中 config 关键字后面的配置项名字加上“CONFIG_”前缀。
  config 关键字下面的这几行是配置项属性,属性里面描述了配置项的类型、输入提示、依赖关系、帮助信息和默认值等。

1.5、 depends on 和 select

  “depends on”说明“A”项依赖于“B”,也就是说“B”被选中以后“ A”才能被选中

1.6、 choice/endchoice

  choice/endchoice 代码段定义了一组可选择项,将多个类似的配置项组合在一起,供用户单选或者多选。

1.7、 menuconfig

  menuconfig 和 menu 很类似,但是 menuconfig 是个带选项的菜单

1.8、 comment

  comment 用 于 注 释 , 也 就 是 在 图 形 化 界 面 中 显 示 一 行 注 释

1.9、 source

  source 用于读取另一个 Kconfig

二、添加自定义菜单

  图形化配置工具的主要工作就是在.config 下面生成前缀为“CONFIG_”的变量,这些变量一般都要值,为 y, m 或 n,在 uboot 源码里面会根据这些变量来决定编译哪个文件。添加自定义菜单要求如下:
  ①、在主界面中添加一个名为“My test menu”,此菜单内部有一个配置项。
  ②、配置项为“MY_TESTCONFIG”,此配置项处于菜单“My test menu”中。
  ③、配置项的为变量类型为 bool,默认值为 y。
  ④、配置项菜单名字为“This is my test config”。
  ⑤、配置项的帮助内容为“This is a empty config, just for tset!”。
  打开顶层 Kconfig,在最后面加入如下代码:

menu "My test menu"
config MY_TESTCONFIG
 bool "This is my test config"
 default y
 help
  This is a empty config, just for test!
endmenu # my test menu

  Kconfig 文件的最终目的就是在.config 文件中生成以“CONFIG_”开头的变量。

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • win10企业版激活简便方法

    win10企业版激活简便方法win10企业版激活简便方法因为之前加固态,就拿去升级,顺便重装了一下系统,谁知道被坑了,给我看的时候显示的是激活,结果是假激活,有很多win10激活都是假激活,只有6个月的使用权限,因为如今装了很多编程软件,实在不想再重新装系统,于是找到了一种比较简单的方法,推荐给有相同境遇的朋友吧,非永久激活,也是6个月而已。1.首先启动超级管理器命令行右键左下角window图标 2、复制命令:s…

    2022年5月30日
  • python︱六款中文分词模块尝试:jieba、THULAC、SnowNLP、pynlpir、CoreNLP、pyLTP「建议收藏」

    python︱六款中文分词模块尝试:jieba、THULAC、SnowNLP、pynlpir、CoreNLP、pyLTP「建议收藏」公众号“素质云笔记”定期更新博客内容:THULAC四款python中中文分词的尝试。尝试的有:jieba、SnowNLP(MIT)、pynlpir(大数据搜索挖掘实验室(北京市海量语言信息处理与云计算应用工程技术研究中心))、thulac(清华大学自然语言处理与社会人文计算实验室)四款都有分词功能,本博客只介绍作者比较感兴趣、每个模块的内容。jieba在这不做介绍,可见博客:…

    2022年5月6日
  • 阿里iconfont使用方法

    阿里iconfont使用方法阿里巴巴iconfont的使用方式分为两种:本地使用线上引用iconfont-阿里巴巴矢量图标库0.前期准备使用时先到网站上选中需要使用的图标添加至项目1.本地使用1.下载项目至本地2.解压到项目中3.在页面中引入样式<!DOCTYPEhtml><htmllang=”en”><head> <metacharset=”UTF-8″> <metaname=”viewport”content=”width=dev

    2022年10月29日
  • 关于revision 的cover letter

    关于revision 的cover letterhttp://emuch.net/html/201101/2741196.html 好,coverletter明白了。那SuggestedListofPotentialReferees如何处理呢?大家好,自己有篇elsevier的期刊在修改!不知道在提交修改稿的时候。大家的coverletter如何处理????因为系统要求专门的response

    2022年5月29日
  • html从零开始——为网页加入樱花飘落效果[通俗易懂]

    html从零开始——为网页加入樱花飘落效果[通俗易懂]JavaScript代码: varstop,staticx; varimg=newImage(); img.src=”data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUgAAAEwCAYAAADVZeifAAAACXBIWXMAAACYAAAAmAGiyIKYAAAHG2lUWHRYTUw6Y29tLmFkb2Jl…

    2022年7月12日
  • Eric6的基础使用方法「建议收藏」

    Eric6是Python编程语言的IDE程序,功能之强大,绝不输于Python平台下的任何IDE程序,占用内存低运行速度快足以令Eric6藐视群雄,最可贵的是与PyQt5结合的更是天衣无缝,简直就是开发GUI程序的绝配。PyQt5是赖以Python编程语言的外部GUI开发语言,其夯实的底层基础与强大的可视化界面设计让PyQt5成为Python语言GUI开发的佼佼者,更新速度之快,开发GUI程序的速度

    2022年4月17日

发表回复

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

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