[英]Variable declaration in make tools
让我们有一个简单的make-file
:
default:
$(CC) $(FLAGS) $(TARGET) $(TARGET).c
CC=gcc
FLAG= -o
TARGET=binary
那么,变量CC
, FLAG
和TARGET
是否将添加到make
工具的环境变量数组中,或者该变量不依赖make
的变量环境?
我不确定您在这里到底要问什么,但是:make维护自己的变量集,这些变量与“环境变量”(在环境变量的标准系统定义中)完全分开。 当make扩展变量(例如$(CC)
)时,它将使用其“ make变量”(而非“环境变量”)集中的值。
当make启动时,它将所有环境变量导入为“ make变量”,以便可以通过常规make变量扩展对其进行访问。
如果更改也是环境一部分的make变量的值,则环境中的值也会更改。 同样,当您使用export
关键字(在GNU make中)时,make也会将该变量也放入环境中。
当make运行程序时,它将环境变量而不是make变量传递给正在运行的程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.