最后更新:2013-08-11
todo:
1.待添加更多的实际例子。
2.继续参考:
去把更多的规则和用法整理进来。
【背景】
之前折腾过:
linux内核中的 make menuconfig
和后来的交叉编译方面,crosstool-ng的ct-ng menuconfig:
【记录】crosstool-ng-1.18.0中配置xscale
【记录】Ubuntu下更新crosstool-ng的menuconfig配置
什么是menuconfig
menuconfig,从名字上,就可以看出,是基于menu的config,即,菜单式的配置。
其是和之前相对的,基于命令行的,交互式,询问时的
config
来说的。
即常见的:
make config:基于命令行的,其会在命令行中,针对每个配置选项,出现一个询问,问你选哪个,所以也叫交互式的配置。相对来说,使用起来,很不方便,很不直观。
make menuconfig:基于menu菜单式的配置。
更多的几种配置方式的对比,参见:
【整理】make config,make menuconfig,make oldconfig,make xconfig,make defconfig
menuconfig使用的基本方法
menuconfig的使用方式,主要是:
- 上下键:选择不同的行,即移动到不同的(每一行的)选项上
- 空格键:用于在 选择该选项,取消选择该选项,之间来回切换
- 选择该(行所在的)选项:则对应的该选项前面就变成了,中括号里面一个星号,即 [ * ],表示被选中了。
- 如果是取消该选项,就变成了,只有一个中括号,里面是空的,即:[ ]
- 左右键:用于在Select/Exit/Help之前切换
- 回车键:左右键切换到了某个键上,此时回车键,就执行相应的动作:
- Select:此时一般都是所在(的行的)选项,后面有三个短横线加上一个右箭头,即 —>,表示此项下面还有子选项,即进入子菜单
- Exit:直接退出当前的配置
- 所以,当你更改了一些配置,但是又没有去保存,此时一般都会询问你是否要保存当前(已修改后的最新的)配置,然后再退出。
- Help:针对你当前所在某个(行的)选项,查看其帮助信息。
- 一般来说,其帮助信息,都包含针对该选项的很详细的解释
- 换句话说:如果你对某个选项的功能,不是很清楚,那么就应该认真仔细的去看看其Help,往往都会找到详细解释,以便你更加了解此配置的含义
- 另外一般也会写出,此选项所对应的宏
- 该宏,就是写出到配置文件中的那个宏
- 对于写makefile的人来说,往往也是利用此相关的宏,在makefile中,实现对应的不同的控制
快捷键快速跳转到对应的选项
menuconfig中的,每一行的选项,都有一个,用特殊颜色标记出来的字母,很明显,此字母,就是该行的快捷字母。
注意:此类快捷字母,一般都是大写的,且是大小写区分的。
我们可以通过,直接在键盘上面按出此字母,而快速将光标,移动到该行。
随便举个例子,比如,crosstool-ng中的menuconfig后的主界面中,就有最常用的:
“Save an Alternative Configuration File”
如图:
此处,就可以(通过键盘的上面的Shift+S而)输入大写字母S,而直接跳转到对应的这一行。
此小技巧,对于页面显示很多行,需要多个界面来回切换,快速操作方面,还是可以提升很大的操作效率的。