《linux内核的makefile(中文版+英文版)》.doc
文本预览下载声明
Linux内核的Makefile
1 2
3 本文档描述了Linux内核的Makefile。
===表的内容
6 7 === 1概述
=== 2,谁做什么
9 === 3的kbuild文件
10 --- 3.1 11 --- 3.2 目标定义
内置对象的目标- OBJ-Y
12 --- 3.3可加载模块的目标- obj的13米
--- 3.4对象导出符号
14 --- 3.5库文件的目标- LIB-Y
15 --- 3.6目录中的16 --- 3.7编译标志
下
17 --- 3.8命令行依赖
18 --- 3.9依赖关系跟踪
19 --- 3.10特殊规则
20 --- 3.11 $(CC)支持功能
21 - - 3.12 $(LD)的支持功能
=== 4主机程序支持
24 --- 4.1简单的主机程序
25 --- 4.2复合主机程序
26 --- 4.3定义共享库
27 --- 4.4使用C + +为22 23主机方案
28 --- 4.5控制编译器选项为主机程序
29 --- 4.6当宿主程序实际是建
30 --- 4.7使用hostprogs-$“(CONFIG_FOO)
31 32 === 5的Kbuild清洁的基础设施
33 34 === 6架构的Makefile
35 --- 6.1变量设置调整构建的架构
36 --- 6.2先决条件archheaders:
37 --- 6.3先决条件到archprepare:
38 --- 6.4列出目录访问时降
39 - - 6.5体系结构特有的引导映像
40 --- 6.6建筑非kbuild的目标
41 --- 6.7命令可用于建设的引导映像
42 --- 6.8自定义kbuild的命令
43 --- 6.9预处理连接器脚本
44 --- 6.10的通用头文件
45 46 === 7的kbuild语法的出口头
47 --- 7.1头-Y
48 --- 7.2 objhdr-Y
49 --- 7.3目的地- Y
50 --- 7.4的通用-Y
51 52 = == 8的Kbuild变量
53 === 9 Makefile中的语言
54 === 10积分
55 === 56 57 11 TODO
=== 1概述
58 59的Makefile有五个部分:
60 61 Makefile中最顶层的Makefile。
62 。配置最顶层的Makefile中读取内核配置文件。
63 弓/ $(ARCH)/ Makefile中拱的Makefile。
64 脚本/ Makefile文件。共同的规则等,为所有kbuild的的Makefile。
65 kbuild的Makefiles中大约有500个,这些
66 67。配置文件,来从内核
配置过程
68 69 70最顶层的Makefile是负责建设两个主要产品:vmlinux的
71(居民内核映像)和模块(任何模块文件)。
72建立这些目标通过递归下降到73内核源代码树。
74访问的子目录列表的子目录
取决于内核的
75配置。最顶层的Makefile文本上有一个拱形的名称拱/ $(ARCH)/ Makefile中的Makefile
76。拱的Makefile提供
77架构相关的信息,最顶层的Makefile
78 79每个子目录下有一个的kbuild Makefile文件执行的命令
80从上面传下来的。kbuild的Makefile将使用的
81。配置文件构建各种文件列出了使用kbuild的建立
82任何内置或模块化的目标。
83 84脚本/ Makefile文件。* /包含了所有的定义规则等
85用于kbuild的makefile文件的基础上构建内核。
91 92 86 87 88 === 2
89 90人有四种不同的关系,与内核的Makefile。
*用户*是编译内核的人。这些人的命令,如
93 “make menuconfig命令”或“使”。他们通常不读或编辑
94任何内核的Makefile中(或任何其他的源文件)。
95 96 *普通开发人员97设备驱动程序,文件系统和网络协议的功能,如工作的人
。这些人要
保持98 kbuild的Makefile中的子系统,它们是
99上工作。为了有效地做到这一点,
显示全部