【发布时间】:2014-09-06 18:36:22
【问题描述】:
KDIR ?= $(shell uname -r)
?=是什么意思?
我从 Stack Overflow 的另一个线程中了解了 :=、+= 和 = 之间的区别,但无法找到 ?= 的解释。
【问题讨论】:
标签: linux linux-kernel makefile
KDIR ?= $(shell uname -r)
?=是什么意思?
我从 Stack Overflow 的另一个线程中了解了 :=、+= 和 = 之间的区别,但无法找到 ?= 的解释。
【问题讨论】:
标签: linux linux-kernel makefile
?= 表示仅在 KDIR 变量未设置/没有值时设置它。
例如:
KDIR ?= "foo"
KDIR ?= "bar"
test:
echo $(KDIR)
将打印“foo”
GNU 手册:http://www.gnu.org/software/make/manual/html_node/Setting.html
【讨论】:
?= 可用于将默认/备用值应用于变量,它可能允许在环境中设置KDIR。跨度>
?=。
感谢 Simon 和 R.T.感谢他们快速正确的反应。
另外,我找到了详细解释所有内容的 GNU 手册: http://www.gnu.org/software/make/manual/html_node/Setting.html
【讨论】: