?1. 添加配置宏步驟?
?1.1 修改 Kconfig(推薦方式)?
- ?定位 Kconfig 文件?
內核各子目錄(如?drivers/char/
)通常包含?Kconfig
?文件,用于定義模塊配置選項7。 - ?添加宏定義?
示例:在?drivers/char/Kconfig
?中添加一個布爾選項:config MY_SET_FEATURE
? ? bool "Enable My SET Feature"
? ? default n
? ? help
? ? ? ? This enables experimental feature XYZ.depends on
:依賴其他宏(如?depends on NET
)。tristate
:三選一(y/m/n,需?CONFIG_MODULES=y
?支持模塊化)。bool
:二選一(y/n)。
1.2 舊版內核,修改config.in 方式。
bool 'Enable Old Feature' CONFIG_OLD_FEATURE
default n
?
修改后通過?make menuconfig
?生成?.config
。
CONFIG_
MY_SET_FEATURE is not set?
如果打開的話,可以在defconfig里面設置?CONFIG_MY_SET_FEATURE
= y,編譯后查看.config,查看修改結果;
使用測試:
#ifdef CONFIG_
MY_SET_FEATURE
? ? printk(KERN_INFO "MY_SET_FEATURE
?is enabled\n");
#endif?