2. makefile的结构

1. makefile元素含义

target:

  1. 通常是需要生成的目标文件名
  2. make所需要执行的命令名称

prerequisities:

  1. 当前目标所依赖的其他目标或文件

command:

  1. 完成目标所需要执行的命令

注意
targets可以包含多个目标:使用空格对多个目标名进行分隔
prerequisites可以包含多个依赖:使用空格堆多个依赖进行分隔

2. 规则中的注意事项

[Tab]:‘\t’
每一个命令行必须以[Tab]字符开始
[Tab]字符告诉make此行是一个命令行
续行符:\
可以将内容分开写到下一行,提高可读性

3. makefile的依赖示例

all : test
(tab)echo “make all”
test:
(tab)echo “make test”

依赖规则

  1. 当目标对应的文件不存在,执行对应命令
  2. 当依赖在时间上比目标更新,执行对应目标
  3. 当依赖关系连续发生时,对比依赖链上的每一个目标

小技巧
makefile中可以在命令前加上@符,作为命令无回显

在这里插入图片描述
输出:
在这里插入图片描述

4. 第一个编译案例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在终端测试:
在这里插入图片描述
注:之前make过,报过警告,所以这里有文件没有再次编译

4.1 小技巧

我们不做修改,再次make时,它还是会:
在这里插入图片描述
我们可以做出这样子的修改:
在这里插入图片描述
这样,再次make时:
在这里插入图片描述
那我们执意要执行时,可以在终端执行这样子的命令:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值