本帖最后由 luofuchong 于 2021-12-20 11:48 编辑
OpenWrt下,kernel配置文件分3层(甚至4层),比如:
1、底层是target/linux/generic/config-4.9
2、中间层是target/linux/[target]/config-4.9
3、还有一层是target/linux/[target]/[profile]/config-4.9
而且,我发现:
1、make kernel_menuconfig会调用LINUX_RECONF_CMD,把上面的1和2层合并成内核根目录下的.config;
2、make V=s编译会调用LINUX_CONF_CMD,把上面的1、2和3层合并成内核根目录下的.config
我理解OpenWrt为了避免重复造轮子,把通用的内核配置归类到generic,把target相关的安排在target目录下,可是这样给我带来的2个困扰:
1、为什么make kernel_menuconfig后得到的.config不是最终make编译用的.config,是有意而为之?
2、如果我要把OpenWrt移植到一个新的cpu平台下,那target下的config-xx如何获取?是先touch一个target下的空config-xx文件,然后make kernel_menuconfig,
再手动在上面增加target相关配置,然后menuconfig界面下保存配置,让脚本通过内部的LINUX_RECONF_DIFF命令,生成target下的config-xx文件内容?
3、另外,那profile下的config-xx文件内容,只能自己手动填写?
刚接触OpenWrt没多久,对于OpenWrt下kernel的config配置这块一直没搞明白,在wiki下也没搜到答案,还请各位大牛多多指点一下,谢谢!
请不要胡乱输入以及粘贴、复制等方式灌水
请尊重作者、并共同维护网站的正常阅读,否则账户将会被限制发帖、回帖,站内短信以及阅读权限等都会受到影响,谢谢。
具体限制方式:https://www.right.com.cn/forum/thread-8307840-1-1.html
|