Makefile文件的规则:
#用"#"号表示注释
target(要生成的文件):dependencies(被依赖的文件)
#命令前的是"tab"而非空格。误用空格是初学者容易犯的错误!
命令1
命令2
.
.
.
命令n
#可以使用"\"表示续行。注意,"\"之后不能用空格!
target:通常是我们要生成的文件的名字,摆放的顺序不重要,但第一个target是默认的target。当make不带参数时,自动执行第一个target。target也可以是要求make完成的动作,执行这种target后并不能得到和target同名的文件,因此,也称为伪target(phony target)。
dependencies:是生成target所需的文件名列表。依赖可以为空,常用的“clean”target就常常没有依赖,只有命令。
命令:可以是任何一个shell能运行的命令。
说明:
1、在Makefile文件中”#“是表示注释
2、 用反斜杠"\"表示续行
3、命令前面的是tab键,而非空格键
举例说明:
file1.c
#include<stdio.h>
#include"file2.h"
int main()
{
……
}
file2.h
int function()
{
……
}
flie2.c
#include"file2.h"
void File2Print()
{
……
}
Makefile
helloword:file1.o file2.o
gcc file1.o file2.o -o helloword
file1.o:file1.c file2.h
gcc file1.c file2.h -o file1.o
file2.o:file2.c file2.h
gcc file2.c file2.h -o file2.o
clean:
rm -rf file1.0 file2.o helloworld
参见文档: http://wiki.ubuntu.org.cn/%E8%B7%9F%E6%88%91%E4%B8%80%E8%B5%B7%E5%86%99Makefile:%E6%A6%82%E8%BF%B0