Makefile学习笔记

上述代码中一共有 5 条规则, 1-2 行为第一条规则, 3-4 行为第二条规则, 5~6 行为第三条

规则, 7-8 行为第四条规则, 10~12 为第五条规则, make 命令在执行这个 Makefile 的时候其执

行步骤如下:

第一条规则:main 是我们想要的可执行文件,通过main.o、 input.o 和 calcu.o 这三个文件生成main;

执行main的时候会看看这三个文件在不在,在的话是不是最新的,如果都满足就不改变main了,如果不是就继续执行;

第二、三、四条规则:想生成main.o、 input.o 和 calcu.o 这三个目标文件,就通过这三个文件的.c去生成目标文件;

第五条规则:只有输入"make clean",才会执行,执行以后就会删除当前目录下所有的.o 文件以及 main。

修改后的代码:

第一条规则:objects就是一个变量

第二条规则:声明 clean 为伪目标,声明 clean 为伪目标以后不管当前目录下是否存在名

为"clean"的文件,输入"make clean"的话规则后面的 rm 命令都会执行

第三条规则:第 5 行使用了模式规则,第 6 行使用了自动化变量

相关推荐
Radan小哥15 分钟前
Docker学习笔记—day008
笔记·学习·docker
源代码•宸1 小时前
GoLang写一个简单版生命游戏模拟器
经验分享·笔记·学习·游戏·golang
白帽黑客-晨哥2 小时前
最适合零基础的渗透测试学习路径:理论+实战+就业,我在湖南网安基地实现了
学习·web安全·渗透测试·实战项目·就业·湖南网安基地
q***44813 小时前
java进阶--多线程学习
java·开发语言·学习
断剑zou天涯8 小时前
【算法笔记】窗口内最大值或最小值的更新结构
java·笔记·算法
Naiva9 小时前
【小技巧】Microchip 把 MPLAB X IDE工程编码改成 UTF-8
笔记
ndjnddjxn12 小时前
Rust学习
开发语言·学习·rust
菜鸟‍12 小时前
【后端学习】MySQL数据库
数据库·后端·学习·mysql
陈天伟教授13 小时前
基于学习的人工智能(1)机器学习
人工智能·学习