Make 命令简介
所属分类 linux
浏览量 655
Makefile Make
Make 构建工具,诞生于1977年,主要用于C语言项目
只要某个文件有变化,就要重新构建的项目,都可以用Make
make 默认读取 Makefile
make -f mymakefile
make --file=mymakefile
Makefile文件由一系列规则(rules)构成
每条规则
target : prerequisites
[tab] commands
目标 target
前置条件 prerequisites
命令 commands
目标 必需
前置条件 和 命令 可选 , 至少有一个
每条规则就明确两件事
构建目标的前置条件是什么,以及如何构建
伪目标
phony target
# 注释
Makefile:4: *** missing separator. Stop.
命令必须 TAB 开头
.PHONY: clean
clean:
rm *.class
如果不写 .PHONY: clean
目录存在 clean 文件时 , 不会执行
make: `clean' is up to date.
@ 关闭命令回显
hello1:
echo "hello"
hello2:
@echo "hello"
make hello1
echo "hello"
hello
make hello2
hello
通配符
rm *.class
模式匹配
%.o: %.c
等价以下写法
f1.o: f1.c
f2.o: f2.c
msg = hello make
echo $(msg)
几个赋值运算符的区别
= 是最基本的赋值
:= 是覆盖之前的值
?= 是如果没有被赋值过就赋予等号后面的值
+= 是添加等号后面的值
内置变量
$(CC) 当前使用的编译器,$(MAKE) 当前使用的Make工具
自动变量
$@ 当前目标
make foo 的 $@ 表示foo
$< 第一个前置条件
一个例子
.PHONY: cleanall cleanlog cleanclass
cleanall : cleanlog cleanclass
rm app
cleanlog :
rm *.log
cleanclass :
rm *.class
https://gitee.com/dyyx/hellocode/tree/master/demo/makedemo
makefile 实例
上一篇
下一篇
k8s架构简介
k8s本地测试环境搭建工具
云原生技术发展历程
vscode 搭建go开发环境
MAC wifi 重新输入密码连接
go httpFileServer