root@23e196045c6f:/usr/src/linux-source-4.9# make menuconfig
使用配置文件运行脚本:
root@23e196045c6f:/usr/src/linux-source-4.9# make scriptconfig SCRIPT=Kconfiglib/examples/print_config_tree.py SCRIPT_ARG=.config
======== Linux/x86 4.9.65 Kernel Configuration ========
[*] 64-bit kernel (64BIT)
General setup
() Cross-compiler tool prefix (CROSS_COMPILE)
[ ] Compile also drivers which will not load (COMPILE_TEST)
() Local version - append to kernel release (LOCALVERSION)
[ ] Automatically append version information to the version string (LOCALVERSION_AUTO)
-*- Kernel compression mode
--> Gzip (KERNEL_GZIP)
Bzip2 (KERNEL_BZIP2)
LZMA (KERNEL_LZMA)
...
但好处是可以传递不同的内核配置并轻松匹配更改:
root@23e196045c6f:/usr/src/linux-source-4.9# make scriptconfig SCRIPT=Kconfiglib/examples/print_config_tree.py SCRIPT_ARG=/tmp/config1 > config1-list.txt
root@23e196045c6f:/usr/src/linux-source-4.9# make scriptconfig SCRIPT=Kconfiglib/examples/print_config_tree.py SCRIPT_ARG=/tmp/config2 > config2-list.txt
感谢@jeff-schaller 的重播,我为 Kconfiglib 项目做出了贡献,现在这个任务有一个新的示例脚本。这些是使用它的步骤:
在包含 linux 源代码的目录中,克隆 repo:
修补生成文件:
根据需要进行配置,基本上是为了获取 .config 文件:
使用配置文件运行脚本:
但好处是可以传递不同的内核配置并轻松匹配更改:
最后现在使用差异工具: