make工程管理器 ==》 linux系统中管理多文件变成的工具,用于编程过程中多个资源文件之间的编译控制。符合大部分linux下软件的控制流程。
原理:根据Makefile脚本文件的规则执行批量处理命令
make 工程管理工具默认已经安装
对应的配置文件需要程序员指定:makefile Makefile
执行make操作会默认查找以上两个文件并执行文件规则
执行:
在在工程目录下执行make命令会自动按照makefile编译
makefile的文件编写规则:
目标文件:依赖文件
执行命令
make编译过程会根据工程文件中每个文件的 时间戳 来决定是否参与变异
make直接回车默认生成第一个目标文件
make xxx只生成xxx相关的目标,xxx只能是makefile的目标
makefile 的变量:
1、自定义变量
2、系统变量
3、自动变量
自定义变量 ==》 替换大量出现的重复字符串
格式:变量名称 = 目标字符串
使用:
(
变
量
名
称
)
;
系
统
变
量
=
=
》
系
统
内
置
的
特
定
含
义
的
变
量
F
L
A
G
S
=
−
W
a
l
l
−
c
−
g
自
动
变
量
=
=
》
(变量名称); 系统变量 ==》 系统内置的特定含义的变量 FLAGS = -Wall -c -g 自动变量 ==》
(变量名称);系统变量==》系统内置的特定含义的变量FLAGS=−Wall−c−g自动变量==》@ $< $^
$@ ⇒ 默认的目标文件名称
$< ⇒ 默认的第一个依赖文件名称
$^ ⇒ 默认所有的依赖文件
* 代表任意文件
% 代表一个同名文件
.PHONY: 伪目标
# 注释
第一步:编写C代码 ⇒ vim xxx.c
第二步:在同目录下创建Makefile文件 ⇒ vim Makefile
第三步:编辑Makfile文件,写入编译规则
第四步:执行make命令开始编译 ⇒ make
第五步:执行可执行程序验证效果 ⇒ ./a. out
makefile中的伪目标:避免makefile中的目标与外界文件同名而干扰编译过程
make ⇒ 生成可以执行程序
make clean ⇒ 清理编译过程中生成的临时文件和目标文件
make install ⇒ 为了将编译的程序安装到系统
make uninstall ⇒ 卸载make安装的软件