make savedefconfig命令
首先这条命令是为了完整且不冗余的保存配置内核后写进的.config文件的配置项为后面的内核编译做好准备。
曾几何时,很多次直接用
cp .config arch/xxx架构/configs/xxx_defconfig
此命令去覆盖arch/xxx架构/configs/中保存的默认xxx_defconfig文件,导致系统无法启动或者其他问题。因为执行 make xxx_defconfig 后产生的.config和在 arch/xxx架构/configs/ 中保存的默认xxx_defconfig文件有较大的差异项,同时少了一些通用的配置项。于是内核中提供了make savedefconfig这个命令。
在linux-5.16.x/scripts/kconfig/Makefile 文件下有相应的说明
linux各版本代码在线查看/make savedefconfig说明在源码中具体位置
因此make savedefconfig命令生成的defconfig文件更精简,更易读。