Il existe de nombreux codes sources du noyau Linux, avec des milliers d'options de configuration, et la configuration est assez compliquée.
Afin de mieux choisir la configuration fonctionnelle que vous souhaitez, le code source du noyau Linux organise un système de configuration
Le système de configuration comprend trois parties :
Makefile
: Responsable de la configuration globale et de la compilationMakefile
:负责整体的配置编译Kconfig
:配置选项的来源这个配置系统就是执行make menuconfig
显示的图形化界面:
内核配置选项的源文件是 Kconfig
文件;
主选项的配置源文件是:arch/$(ARCH)/Kconfig
Kconfig
: Source des options de configuration
make menuconfig
L'interface graphique affichée : 🎜🎜🎜🎜🎜Fichier Kconfig du noyau🎜🎜 🎜🎜Fichier Kconfig
; 🎜🎜Le fichier source de configuration de l'option principale est : arch/$(ARCH)/Kconfig
fichier 🎜; 🎜主Kconfig
文件调用其他目录的Kconfig文件又调用各级子目录的Kconfig
文件,形成树状的配置选项;Kconfig
文件调用其他目录的Kconfig
文件,其他目录的Kconfig
文件又调用各级子目录的Kconfig
文件,形成树状的配置选项;
例如: drivers/net/usb/Kconfig中,DM9601菜单:
config USB_NET_DM9601
是菜单项;菜单项下面的是菜单的属性;
菜单都是以config
config USB_NET_DM9601
是菜单项;菜单项下面的是菜单的属性;🎜 🎜菜单都是以config
开头,中间有空格,后面大写的就是菜单项。🎜tristate
: indique des informations d'invite, Chaîne affichée dans le Menu de configurationtristate
:表示提示信息,在配置菜单中显示的字符串depends
:表示依赖于的选项(依赖的选项选上,才能选这个选项)select
:表示本菜单选上后,自动选上的菜单Help
:帮助文字;Kconfig的语法详细参考:Documentation/kbuild/kconfig-languages.txt
内核配置完毕之后,会在内核源码的顶层目录下生成.config
文件;
打开.config
文件,我们可以看到内容如下:
这里在配置中选上了”Davicom DM96xx based USB 10/100 ethernet device”
选项,在.config
文件中会生成“CONFIG_USB_NET_DM9601=y
depends
: Indique les options qui dépendent de (cette option ne peut être sélectionnée que lorsque l'option dépendante est sélectionnée) 🎜🎜select
: Indique la sélection de ce menu Après le chargement, le menu sélectionné automatiquement🎜🎜Aide
: Texte d'aide ; Référence détaillée de la syntaxe Kconfig : Documentation/kbuild/kconfig-linguals.txt🎜
.configFichier
; 🎜Ouvrir