今天想把Linux内核裁剪一下,即关掉一些用不到的功能。
正常来说应该是命令:make menuconfig,弹出图形化配置界面,配置完成后的配置信息保存在内核源代码的根目录下的.config文件中。
但是,盘古开发板的wiki上面给出的内核编译命令是:
问题来了,它这里怎么不是make config,而是 make i2som_panguboard_defconfig,为什么会是make这个文件呢?
百度发现,i2som_panguboard_defconfig这个配置文件位于内核源代码根目录下的:arch/arm/configs中,即在这里存放着各个平台和芯片的配置文件。那么为什么要放在这里,不是在.config中?
它这里执行make i2som_panguboard_defconfig后,就会在内核源代码的根目录下生成.config文件。即可以认为这个.config文件是动态生成的,因此在其它地方保存这个配置文件就很有必要了,这个配置文件需要修改的话可以先执行make i2som_panguboard_defconfig,生成.config,然后用make menuconfig图形化配置,配置完之后的配置信息会保存在内核源代码根目录下的.config中,此时可以将这个.config文件复制到你保存配置文件的地方并重命名,这样就可以保存这次的配置信息。
如果说不知道上次的配置文件是怎么样的,还可以去你更新了系统的电路板上的根文件系统找这个配置文件,目录是/proc/config.gz,即这个config.gz解压后就是你这个内核的配置文件。
注意:虽然内核源代码根目录下的.config文件是由make i2som_panguboard_defconfig生成的,但是这两个文件的内容并不完全一样。具体详情还不清楚。。。