linux之Makefile语法
1.在同一级目录下创建文本文档Makefile文件,和hello.c的文件,#在Makefile中是注释的意思。
2.用make直接进行编译,会生成.o、.i、.S.等文件。
第一层 显示规则:
1.目标文件:依赖文件(可以省去预编译,汇编,编译)
[Tab键]指令
2.第一个目标文件是我们的最终目标,下面的hello是我们的最终目标。
3.伪目标:.PHONY:
rm -rf hello.S hello.i hello.o(指定删除你不需要的文件)
4.Makefile文件书写
1 | hello:hello.o //hello是目标文件,hello.i是依赖文件 |
第二层 变量
在第一层的基础上进行变量替换:
变量 = (替换) +=(追加) :=(恒等于)
示例:
1 | VAL=hello //替换 |
第三层 隐含规则:
%.c(任意的.c文件 *.c(所有的.c文件)
1 | %.c:%.o |
第四层 通配符
最常见的几个指令:
$@ 所有的目标文件 $^ 所有的依赖文件 $< 所有依赖文件的第一个文件
希望对你们有帮助,制作不易,转载请标明出处: