linux Makefile

来源:互联网 发布:https的默认端口是 编辑:程序博客网 时间:2024/06/11 16:13

target:prerequisites

command

目标:依赖

命令

注意:命令需要以【TAB】键开始 不能使用空格键移至目标位处

Makefile最终只有一个目标,其他目标都是被最终目标连带出来的

定义makefile时,第一条规则中的目标将被认为是最终目标

当文件名既不为Makefile又不为makefile时,使用:

make -f 文件名  指定目标

伪目标:makefile中把没有任何依赖只有执行动作的目标称为伪目标

例:

.PHONY:clean

clean:

rm -f hello main.o

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

变量:

例:

obj=main.o func1.o func2.o func3.o

hello:S(obj)                               ——引用变量

gcc S(obj) -o hello           ——引用变量

makefile中默认自带的变量

S^:代表所有的依赖文件

S@:代表目标文件

S<:代表第一个依赖文件

例:

hello:main.o func1.o func2.o func3.o

gcc main.o func1.o func2.o func3.o -o hello

相当于:

hello:main.o func1.o func2.o func3.o

gcc S^ -o S@

其他符号的含义

#:表示注释

@:表示取消回显


0 0
原创粉丝点击