makefile的好处:一次编写,终身受益
makefile的命名规则 makefile 或者 Makefile
makefile的三要素:
1.目标
2.依赖
3.规则命令
MAKE 这个项目
编写makefile文件
第一版makefile
写法:
目标:依赖
tal键:规则命令
app:main.c add.c sub.c div.c mul.c
gcc -o app -I ./include main.c add.c sub.c div.c mul.c
保存之后执行make命令
如果更改其中一个文件,那么所有的源码都得重新编译, 可以考虑过程分解.
第二版makefile
makefile里面还可以定义变量
makefile的隐含规则:默认处理第一个目标
第三版makefile
函数:
wildcard 可以进行文件匹配
patsubst 内容的替换
变量 $@ $< 这样的变量,只能在规则中出现
$@ 代表目标
$^ 代表全部依赖
$< 第一个依赖
$? 第一个变化的依赖
测试一下效果
第四版
增加清理能力
最好加上参数防止报错 ==== 强制删除
如果不想看到命令 那么前面加上 @, 如果让指定报错了继续执行,可以加 -
如果当前目录下也有一个clean
那么再执行make clean 就会有问题 – 会出现歧义
解决措施
缺陷: app 生成了两遍