关于makefile的基础知识,可以参考以下教程和文章学习:
1、跟我一起写Makefile
2、linux基础-makefile
3、makefile最佳实践 - 从原理到实用技巧
4、多文件目录下的makefile的编写(从简单到复杂)
5、多目录时Makefile 的编写方法
6、Makefile学习之路(4) — 添加头文件依赖
7、Linux Makefile 生成 *.d 依赖文件及 gcc -M -MF -MP 等相关选项说明
内核makefile的几种编译方式
-
直接编译:
obj-y +=xxx.o;表示由xxx.c或xxx.s编译得到xxx.ko并直接编进内核。 -
条件编译:
obj-$(CONFIG_HELLO) +=xxx.o;根据.config文件的CONFIG_XXX来决定文件是否编进内核。 -
模块编译:
obj-m +=xxx.o;表示xxx作为模块编译,即执行make modules时才会被编译。
