目录
一、Kbuild系统构成
https://blog.csdn.net/weixin_36098975/article/details/135140530
Kbuild本质
一个可扩展、可配置的 Makefile 框架
递归式 Makefile、菜单式配置
Kbuild构成
Makefile:顶层目录下的 Makefile
Kconfig:配置菜单,定义每个 config symbol 的属性(类型、描述、依赖等)
.config:内核的配置文件,一般通过 make menuconfig 等生成,里面列出了各选项的取值。
arch/$(ARCH)/Makefile:跟平台架构相关的 Makefile
scripts/Makefile.*:通用编译规则
Kbuild Makefiles:分布在各个子目录下
KBuild框架
https://blog.csdn.net/qq_42711537/article/details/135044552
二、Kbuild构建的基本流程
1.第一步:生成.config文件
通过topdir下的Makefile,通过conf工具生成.config文件。在执行 make 命令时,内核构建系统会读取 .config 文件中的配置选项,并据此决定如何编译源代码。
- 根据.config生成auto.conf与autoconf.h
https://blog.csdn.net/qq_32220231/article/details/52928885
autoconf.h是供c源码使用(宏开关),而auto.conf供Makefile使用(是否被编译)。
- /proc/config.gz
https://blog.csdn.net/lu_embedded/article/details/108908577
只有当内核配置 CONFIG_IKCONFIG 和 CONFIG_IKCONFIG_PROC 为 y,才会在 /proc 中出现 config.gz 文件。
0 条评论