makefile使用

规则:

目标 依赖 命令

targetprerequisites

<tab>command

注意:命令行必须以tab键开始!!

makefile文件中存在系统默认的自动化变量

1. $^ 代表所有的依赖文件

2. $@ 代表目标文件

3. $< 代表第一个依赖文件

例如:

A:

hello:main.o fun1.o fun2.o

gcc main.o fun1.o fun2.o -o hello

按照上述的自动化变量规则可以写成:

hello:main.o fun1.o fun2.o

gcc $^ -o $@

B:

hello:hello.o
gcc hello.c -o hello
.PHONY:clean
clean:
rm hello hello.o
可以写成:

hello:hello.o
gcc $^ -o $@
.PHONY:clean
clean:
rm hello hello.o

注意:@可以用于取消回显:

hello:hello.o
@gcc hello.c -o hello
.PHONY:clean
clean:
rm hello hello.o

make命令默认在当前目录下寻找名字为makefile或者Makefile的工程文件,当名字不为这两者之一时,可以使用如下方法指定:

    make -f 文件名

Makefile中把那些没有任何依赖只有执行动作的目标称为“伪目标”(phony targets)

例如:

.PHONY:clean
clean:
rm hello hello.o

“.PHONY”将“clean”目标声明为伪目标

makeflie中“#”字符后的内容被视作注释

你可能感兴趣的:(C++,c,gcc,C#,F#)