Makefile主要被用来管理工程并实现自动化编译
Makefile规则
1.文件命名
makefile或Makefile
2.格式
(1)一个Makefile文件中可以有一个或者多个规则
目标:依赖
命令(Shell命令)
- 目标:最终要生成的文件(伪目标除外)
- 依赖:生成目标所需要的文件或目标
- 命令:通过执行命令对依赖进行操作并生成目标(命令前必须Tab缩进)
(2)Makefile中其他规则一般都是为第一条规则服务的
工作原理
main:sub.c add.c main.c
gcc sub.c add.c main.c -o app
1.命令在执行之前,需要先检查规则中的依赖项是否存在
- 如果存在,执行命令
- 如果不存在,向下检查其他规则,如果有相关规则则执行
2.检测更新,在执行规则中的命令时,会比较目标和依赖文件的时间
- 如果依赖的时间比目标时间晚,则重新生成目标
main:sub.o add.o main.o
gcc sub.o add.o main.c -o app
sub.o:sub.c
gcc -c sub.c -o sub.o
add.o:add.c
gcc -c