Makefile 中:= ?= += =的区别(转)
来源:互联网 发布:知名度最高的软件学校 编辑:程序博客网 时间:2024/05/24 07:11
原创链接: http://www.cnblogs.com/wanqieddy/archive/2011/09/21/2184257.html
在Makefile中我们经常看到 = := ?= +=这几个赋值运算符,那么他们有什么区别呢?
= 是最基本的赋值
:= 是覆盖之前的值
?= 是如果没有被赋值过就赋予等号后面的值
+= 是添加等号后面的值
举个栗子:
1、“=”
make会将整个makefile展开后,再决定变量的值。也就是说,变量的值将会是整个makefile中最后被指定的值。看例子:
x = foo y = $(x) bar x = xyz
在上例中,y的值将会是 xyz bar ,而不是 foo bar 。
2、“:=”
“:=”表示变量的值决定于它在makefile中的位置,而不是整个makefile展开后的最终值。
x := foo y := $(x) bar x := xyz
在上例中,y的值将会是 foo bar ,而不是 xyz bar 了。
详细解释请看原文
0 0
- Makefile 中:= ?= += =的区别(转)
- Makefile 中:= ?= += =的区别(转)
- [makefile]makefile中 '=', ':=', '?=', '+='的区别
- Makefile 中 = := ?= 的区别
- Makefile 中 = := ?= 的区别
- Makefile中”=“”?=“”+=“的区别
- Makefile中=与:=的区别
- Makefile中=与:=的区别
- makefile中“=”和“:=”的区别
- Makefile中=与:=的区别
- makefile中“=”和“:=”的区别
- makefile中“=”与“:=”的区别
- Makefile 中:= 和=的区别
- Makefile中=与:=的区别
- Makefile中=与:=的区别
- makefile中“=”和“:=”的区别
- Makefile中=与:=的区别
- makefile 中":"和":="赋值的区别
- [Android]自定义弹幕View
- Tomcat文件存储结构和web.xml设置
- RedHat6.5 bond
- ubuntu环境变量
- 使用psftp向服务器上传文件
- Makefile 中:= ?= += =的区别(转)
- java线程学习(2)
- Lightoj 1216
- 用 CSS3 绘制你需要的几何图形
- Java字节码里的invoke操作&&编译时的静态绑定与动态绑定
- 安装配置postgreSQL+pgcli+pgadmin3
- 【LightOJ】1136 - Division by 3(规律)
- sql2000数据库远程连接
- cs231深度学习课程,注意点总结