3、makefile中的变量和模式规则

此文编写主要参考韦东山老师教程和《跟我一起写makefile》和正点原子教程

makefile中的变量可以看成有3种变量,即时变量、延时变量、自动化变量,并且为了简化程序也引入了模式规则,下面就对这些变量和模式规则做简单介绍。

1、makefile中的两种简单变量

1、即时变量:
A := xxx # A的值即刻确定,在定义时即确定,其中#为注释。
对于即时变量使用“:=”表示,它的值在定义的时候已经被确定了
2、延时变量
B = xxx # B的值使用到时才确定
对于延时变量使用“=”表示。它只有在使用到的时候才确定,在定义/等于时并没有确定下来。

2、如何使用变量

使用变量的时候使用“$”来引用,如果不想看到命令,可以在命令的前面加上"@"符号,就不会显示命令本身。当我们执行make命令的时候,make这个指令本身,会把整个Makefile读进去,进行全部分析,然后解析里面的变量。常用的变量的定义如下:
:= # 即时变量
= # 延时变量
?= # 延时变量, 如果是第1次定义才起效, 如果在前面该变量已定义则忽略这句
+= #追加, 它是即时变量还是延时变量取决于前面的定义
?=:如果这个变量在前面已经被定义了,这句话就不会起效果

3、变量使用例程

(1)makefile 的变量也就是一个字符串&

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值