make file 文件

Make与Makefile要点

make命令运行时,须要一个 Makefile文件,以告诉make命令须要怎么样的去编译和链接程序。系统会自动生成一个Makefile文件。

每层目录都会有一个Makefile文件或者makefile文件但只能有其中一个。

  Makefile内容的核心是一系列的规则,这些规则告诉make程序要做的事以及做这件事所依赖的条件。

基本格式:

target: dependency

(Tab字符)command

注释:

 target(目标):通常是要产生的文件的名称

 dependency(依赖):指用来输入从而产生目标的文件

 command(命令):是make执行的动作,一个规则可以有多条命令,每个命令占一行。命令行的第一个字符是Tab。(命令每一行前面必须缩进)。

例:

在终端输入:

[root@localhost text26]# vim Makefile

在vim里写

Target=saberlily           target和object都是一个变量给它们赋值
Object=saberlily.o print.o 依赖的对象
$(Target):$(Object)          saberlily依赖2个.o文件
gcc $(Object) -o $(Target)   生成一个可执行文件


.PHONY:clean         删除saberlily.o 和saberlily.c防止再次make的时候出现“saberlily是最新的等字样”
clean:
rm *.o saberlily

在终端输入:

[root@localhost text26]# make       
cc    -c -o saberlily.o saberlily.c      (生成可执行文件的过程)
cc    -c -o print.o print.c
gcc saberlily.o print.o -o saberlily
[root@localhost text26]# ls
Makefile  print.c  print.o  saberlily  saberlily.c  saberlily.o

[root@localhost text26]# make
make: “saberlily”是最新的。

[root@localhost text26]# make clean      
rm *.o saberlily
[root@localhost text26]# ls           (成功删除.o文件和可执行文件)
Makefile  print.c  saberlily.c

猜你喜欢

转载自blog.csdn.net/hujiaqi2018/article/details/79161270