宏定义:
1. Makefile中直接定义宏
OBJECTS=filea.o fileb.o filec.o #定义宏
Z=filed.o
prog: $(OBJECTS) #引用宏
cc $(OBJECTS) -o prog #我的机子环境中需要4个tab键
prog1: $Z #引用宏,单个字符无需加园括号
cc $Z -o prog1
2. 在make命令之后带有新的宏定义
make "OBJECTS= filea.o fileb.o filec.o"
Makefile包含五个部分:显示规则,隐式规则,宏定义,文件指示,注释
1. 显示规则
foo.o : foo.c defs.h
g++ -c -g foo.c
2. 隐式规则
make有自动推倒的功能,会根据依赖关系决定源文件是否需要重新编译以及源文件之间的编译顺序
3. 宏定义
4. 文件指示
5. 注释 #