【发布时间】:2018-04-28 20:13:07
【问题描述】:
如何使用 make 目标中定义的变量
.PHONY: foo
VAR_GLOBAL=$(shell cat /tmp/global)
foo:
echo "local" > /tmp/local
VAR_LOCAL=$(shell cat /tmp/local)
echo ${VAR_GLOBAL}
echo ${VAR_LOCAL}
这里是执行输出:
$ echo global > /tmp/global
$ make foo
echo "local" > /tmp/local
VAR_LOCAL=local
echo global
global
echo
【问题讨论】:
-
感谢@KelvinSherlock,你是对的,这是一个骗子。有趣的是,我之前发现它时忽略了它...感谢您的时间。
-
查看该问题时,请使用第二个答案,它几乎在所有情况下都比公认的答案好。这是 SO 中的一种缺陷:有时一个不太好的答案被接受,然后一遍又一遍地提出来,对此无能为力,而且这种不太好的方法会传播到世界各地的 makefile :sad:.跨度>
标签: makefile