make与makefile
make是一条命令,makefile是一个文件, 搭配使用可以完成项目的自动化构建。
makefile中的描述用于指导make程序如何完成工作;make根据makefile中的规则执行命令,最后完成编译输出。
Makefile里面放的是依赖关系和依赖方法,举个例子新建一个makefile的文件:
test:test.c
gcc -o $@ $^ //必须以table开头
直接make,然后./test就可以执行.
(注:$@指目标文件,$^指所有的依赖文件)
当然项目也是需要被清理的,像clean这种,没有被第一个目标文件直接或间接关联,那么它后面所定义的命令将不会被自动执行,不过,我们可以显示要make执行。即命令——“make clean”,以此来清除所有的目标文件,以便重编译。但是一般我们这种clean的目标文件,我们将它设置为伪目标,用 .PHONY 修饰,伪目标的特性是,总是被执行的。
test:test.c
gcc -o $@ $^
.PHONY:clean
clean:
clean -f test