内核的Makefile
来源:互联网 发布:手机cs软件 编辑:程序博客网 时间:2024/05/03 04:30
内核的Makefile
在linux2.6.x/Documentation/kbuild目录下有周详的介绍有关kernel makefile的知识。
内核的Makefile分为5个组成部分:
Makefile 最顶层的Makefile
.config 内核的当前配置文档,编译时成为定层Makefile的一部分
arch/$(ARCH)/Makefile 和体系结构相关的Makefile
s/ Makefile.* 一些Makefile的通用规则
kbuild Makefile 各级目录下的大概约500个文档,编译时根据上层Makefile传下来的宏定义和其他编译规则,将源代码编译成模块或编入内核
顶层的Makefile文档读取 .config文档的内容,并总体上负责build内核和模块。Arch Makefile则提供补充体系结构相关的信息。 s目录下的Makefile文档包含了任何用来根据kbuild Makefile 构建内核所需的定义和规则。
(其中.config的内容是在make menuconfig的时候,通过Kconfig文档配置的结果。
举个例子:
假设想把自己写的一个flash的驱动程式加载到工程中,而且能够通过menuconfig配置内核时选择该驱动该怎么办呢?能够分三步:
第一:将您写的flashtest.c 文档添加到/driver/mtd/maps/ 目录下。
第二:修改/driver/mtd/maps目录下的kconfig文档:
config MTD_flashtest
tristate “ap71 flash"
这样当make menuconfig时 ,将会出现 ap71 flash选项。
第三:修改该目录下makefile文档。
ü 添加如下内容:obj-$(CONFIG_MTD_flashtest) += flashtest.o
这样,当您运行make menucofnig时,您将发现ap71 flash选项,假如您选择了此项。该选择就会保存在.config文档中。当您编译内核时,将会读取.config文档,当发现ap71 flash 选项为yes 时,系统在调用/driver/mtd/maps/下的makefile 时,将会把 flashtest.o 加入到内核中。即可达到您的目的
- 【Makefile】: linux内核的makefile
- Linux内核的Makefile
- 内核的Makefile
- linux内核的makefile
- 内核的Makefile
- 内核驱动的Makefile
- 内核模块的Makefile
- 3. 内核模块的Makefile
- linux内核模块的makefile
- 内核模块的Makefile编写
- 普通的内核模块Makefile
- 编译内核模块的makefile
- 编译内核模块的makefile
- Makefile与内核的编译
- 编译内核模块的Makefile
- 编译内核模块的Makefile
- 内核模块的Makefile文件
- [内核源码][Makefile] Linux内核源码的Makefile
- Log4j
- Test
- VC++6.0下OpenGL环境配置
- 条款3:尽可能使用const
- 我是怎么招聘程序员的
- 内核的Makefile
- 准妈妈都有超能力!
- 九州通小贴士 - 《飞翔的蜘蛛 》
- [转]PHY管理接口(MDIO)
- 学习Oracle中Sequences的使用
- 网站的最大并发连接数
- 使用Rational PureCoverage测试代码覆盖率
- 26.2.2 添加容器
- 功率因数表