make工程管理器是一个“自动编译管理器”,这里的“自动”是指它能够根据文件时间戳自动发现更新过的文件而减少编译的工作量,同时,它通过读入makefile文件的内容来执行大量的编译工作。用户只需编写一次简单的编译语句就可以了。它大大的提高了实际的工作效率。
在一个Makefile文件中通常包含如下内容:
•需要由make工具创建的目标体(target),通常是目标文件或可执行文件。
•要创建的目标所依赖的文件。
•创建每个目标体时需要运行的命令。
例子如下:
main:main.o fun.o
gcc main.o fun.o -o main
main.o: main.c
gcc main.c -c
fun.o:fun.c
gcc fun.c -c
make中使用变量:
例子如下:
bianliang1 =main.o fun.o
bianliang2 =main
bianliang3 =main.c
bianliang4 =fun.c
bianliang5 =gcc
bianliang2:$(bianliang1)
$(bianliang5) $(bianliang1) -o $(bianliang2)
main.o: $(bianliang3)
$(bianliang5) $(bianliang3) -c
fun.o:$(bianliang4)
$(bianliang5) $(bianliang4) -c
•makefile文件主要包含了5部