两个简单例子揭示makefile中“=”和“:=”的区别
2011-07-17 21:58
316 查看
之前一直纠结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 了。
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 了。
相关文章推荐
- 两个简单例子揭示makefile中“=”和“:=”的区别
- 两个简单例子揭示makefile中“=”和“:=”的区别
- 两个简单例子揭示makefile中“=”和“:=”的区别
- 两个简单的例子,带你了解Java中继承和组合的区别
- Linux下两个程序进行socket通信的简单例子
- (10)caffe总结之运行caffe自带的两个简单例子
- 一个简单的例子说明JQuery中wrap、wrapAll、wrapInner的区别
- 计算程序运行时间(.net1.1 于.net2.0的区别)在.net2.0中提供了Stopwatch类,简单例子
- 两个简单的makefile的实现,编译当前目录下所有的.c文件
- 运行caffe自带的两个简单例子
- 两个简单的队列和栈的例子
- 指针函数与函数指针--两个简单例子进行说明
- Makefile简单例子
- php单引号和双引号的区别,简单例子对比
- struts 2.0 两个简单例子
- Caffe 深度学习入门教程 运行caffe自带的两个简单例子
- npm install —— 从一个简单例子,看本地安装与全局安装的区别
- (4.1.37.2)两个简单的例子让你搞懂View和ViewGroup的OnMeasure()
- 举两个例子以快速明白Java中的简单工厂模式
- Caffe学习系列(9):运行caffe自带的两个简单例子