一、linux内核配置系统组成
Linux内核配置系统由三个部分组成。
Makefile文件:分布在Linux内核源码中的Makefile文件,定义了Linux内核的编译规则。
Kconfig文件:给用户提供配置选择的功能。
配置工具:这里使用的是menuconfig,相比于其他工具,这个工具使用的比较多,也比较容易上手。
二、Menuconfig操作方法
在源码目录下,输入命令
make menuconfig
如下图,进入到配置界面。
这个功能界面对应配置工具,它包含配置命令解释器,对配置脚本中使用的命令进行解释,还包含了配置用户界面,用来提供字符界面和图形界面。
三、以leds驱动为例
通过输入 “/” 可以进入搜索界面
输入LEDS
找到=y的那个选项配置
可以看到leds的驱动是在Device Drivers- -> Character devices下面
返回配置界面,找到这个目录
Enable LEDS config”找到对应的 leds 驱动配置选项
点击空格可以去掉这个驱动,
再点空格可以加上这个驱动
到这里,整个 Menuconfig 配置的操作以及流程就完全介绍完了。
如果修改了配置文件,如下图所示的“.config”文件就会被修改。再次编译内核的时候,系统会根据新的.config 文件来编译整个内核。
四、其他配置文件
现在看一下提供源码中的,除了“.config”文件以外,还有其它的 config_for_xxx,如下图所示。
这些都是为了不同的文件系统准备的,有 Android 的配置文件有 Qt 的配置文件等等,或者特殊功能的 config 文件。这些 config 文件都是通过 menuconfig 生成,然后改成易识别的名称。它们共用一套代码,通过 menuconfig 裁减组合成不同功能.config。