在makefile中赋值方式有:'='、':='、'?='和'+='。

            A = a $(B)
B = b
all:
echo $(A)
#运行结果:echo a b
a b

  这种赋值方式是没有先后顺序的,但是这种赋值方式可能会出现问题,例如递归定义时:A = $(A)  

            A := a $(B)
B = b
all:
echo $(A)
# 运行结果:echo a
a

  这种赋值方式有先后顺序,只能使用已经定义的变量。

            A = a
A ?= b
B ?= c
all:
echo $(A) $(B)
#运行结果:echo a c
a c

  这种赋值是在询问A是否等于b,如果前边定义了A变量,那么前边定义时A的值是多少还是多少。如果前边没有定义,如B,就对其进行赋值。

            A = a
A += b
all:
echo $(A)
#运行结果:echo a b
a b

  这种赋值就是在原有的定义上在添加。

  注意:

            #定义一个变量其值为空格
nullstring :=
blank_space := $(nullstring)#end of the line

  这样定义是有好处的。

最新文章

  1. Aspx页面模拟WebService功能
  2. [JS]jQuery,javascript获得网页的高度和宽度
  3. css 水平居中垂直居中的几种方法
  4. 在CentOS上安装rabbitmq-server
  5. 面试准备 - HashTable 的C#实现 开放地址法
  6. 魔兽塔防游戏android源码
  7. 第五十四节,socketserver通讯模块实现并发操作,真多线程并发
  8. [Spoj]Counting Divisors (cube)
  9. onload="fixImage(this, 200, 200)"
  10. 自定义Json解析工具
  11. OO第一单元单元总结
  12. StringUtils中isEmpty 和isBlank的区别
  13. Java JPA小记
  14. windows 2008 r2 不能启用网络发现
  15. 用pymysql操作MySQL数据库
  16. 小程序获取view元素的高度
  17. PHP内置函数实现简单洗牌
  18. Oracle_字符集问题(数据库与客户端字符集关联关系)
  19. 【 C 】高级字符串查找之 strspn 和 strcspn 的思考
  20. Java:类集框架中集合的学习

热门文章

  1. HDU 2444 The Accomodation of Students【二分图最大匹配问题】
  2. 吴裕雄--天生自然ShellX学习笔记:Shell 传递参数
  3. spark shc hbase 超时问题 hbase.client.scanner.timeout.period 配置
  4. osi七层模型专题
  5. python学习Day08--文件操作
  6. dubbo的本地存根
  7. SpringBoot项目启动之前操作,启动之后操作
  8. 吴裕雄--天生自然 pythonTensorFlow图形数据处理:windows操作系统删除tensorflow
  9. LeetCode No.154,155,156
  10. ubuntu19.10——snap错误has install-snap change in progress