健身器材网站模板,沧州网站建设多少钱,夸网站做的好怎么夸,WordPress有意思的代码特效inux内核的编译主要过程#xff1a;配置、编译、安装。 配置主要由Kconfig提供图形界面完成 编译主要基于Kbuild编译系统#xff0c;执行make完成编译 安装主要也是基于Kbuild提供的脚本#xff0c;然后执行make完成安装
Kconfig
Kconfig用于内核的配置#xff0c;mak…inux内核的编译主要过程配置、编译、安装。 配置主要由Kconfig提供图形界面完成 编译主要基于Kbuild编译系统执行make完成编译 安装主要也是基于Kbuild提供的脚本然后执行make完成安装
Kconfig
Kconfig用于内核的配置make menuconfig显示的菜单就来自Kconfig。
make menuconfig的菜单包括了多层每层都是各个目录下对应的Kconfig产生的选择好配置后配置结果会被保存到.config文件中。 执行Makefile时Makefile就会根据.config的结果来实现内核的编译。
Kconfig语法 Kbuild
Kbuild即Kernel build是内核的一个编译系统。
简单来说Kbuild是对Makefile语法功能的扩展。
例如kbuild定义了很多有用的变量如obj-m obj-y,-objs等等用户只要为这些变量赋值kbuild会自动把代码编译到内核或者编译成模块。
Linux内核使用kbuild编译时会扫描两次Linux的Makefile首先读取顶层的Makefile文件然后根据读取到的内容第二次读取kbuild的Makefile文件来编译Linux内核。
内核的Makefile包括五部分 Makefile
顶层的Makefile是编译的入口下面分析一下顶层Makefile文件。
顶层Makefile会向各子目录的Makefile传递一些信息有些变量例如vmlinux-dirs不仅在顶层Makefile中定义并且赋值而且在arch/*/Makefile还作了扩充。 kbuild的更多用法详细参考内核源码文档 Documentation/kbuild/makefiles.txt Documentation/kbuild/modules.txt