haa*_*ael 0 makefile environment-variables
我正在使用GNU make和Makefiles.是否可以为一个构建步骤设置环境变量?
目前我正在做这样的事情:
VAR:=valueA
step1:
echo $(VAR)
Run Code Online (Sandbox Code Playgroud)
然后,"make step1"将打印"valueA".
是否有可能为一个构建步骤重新定义env var?
VAR:=valueA
step1:
echo $(VAR)
step2:
VAR:=valueB
echo $(VAR)
Run Code Online (Sandbox Code Playgroud)
我想"make step1"打印"valueA",但是"make step1"打印"valueB".
首先,那些不是环境变量,它们是变量.理解并记住差异非常重要.
VAR := valueA
step1:
echo $(VAR)
step2: VAR := valueB
step2:
echo $(VAR)
Run Code Online (Sandbox Code Playgroud)
如果您确实希望该值存在于子进程的环境中,则可以使用make的export关键字:
export VAR := valueA
step1:
echo $$VAR
Run Code Online (Sandbox Code Playgroud)