$ cat Makefile
all:
echo VAR is ${HOME}
echo VAR is $${HOME}给出
$ make
echo VAR is /home/abc
VAR is /home/abc
echo VAR is ${HOME}
VAR is /home/abc为什么echo VAR is ${HOME}语法可以在Makefile中工作?我想,要使用外壳变量,就必须使用$${HOME}}
发布于 2018-06-08 07:01:27
是也不是。最好是显式地使用$$。但是,there is a special rule for environment variables
make中的
变量可以来自运行make的环境。make在启动时看到的每个环境变量都被转换为具有相同名称和值的make变量。但是,makefile中的显式赋值或带有命令参数的显式赋值将覆盖环境。(如果指定了‘-e’标志,则来自环境的值将覆盖makefile中的赋值。请参阅选项摘要一节。但这不是推荐的做法。)
https://stackoverflow.com/questions/50751114
复制相似问题