1,make menuconfig依赖于ncurses这个软件库和内核目录下script/kconfig下的一些软件,在使用make menuconfig命令时会编译如下几个软件。
这些软件就是用来实现图形化配置的
2,在使用make menuconfig时会读取.config和内核各个目录下的Kconfig文件。
Kconfig文件用于决定配置界面会有哪些配置选项
.config文件用于决定每个配置项的值(Y、M、N)
3,使用菜单配置完成并保存后,会将配置的结果保存到.config文件,最后在编译链接内核的时候Makefile会读取.config文件中的内容,从而决定是否编译或链接某部分代码。
4,实列:
如图,时driver/net目录下的MCONFIG_DM900akefile,当.config文件中存在CONFIG_DM900=y这个项时,编译时会将dm9000.c编译成dm9000.o并链接到内核源码中。当存在CONFIG_DM900=m这个项时,会把dm9000.o链接成模块。否则不会编译dm9000相关的代码
Makefile文件:
.config文件