隐式变量和自动变量常用于自动推导

基本变量

# 定义变量
VAR = variable
  • variable中不能包含这些字符: “:”、”#”、”=”,也不能包含空格
  • 大小写敏感
  • 四种赋值方式(=、 :=、 ?=、 +=)
# 使用变量
$(VAR)
  • 当检测到变量时进行字符串替换,因此定义变量和定义宏是类似的
  • 可以用变量定义变量,如 VAR2 = $(VAR)

隐式变量

这些变量使用在隐式规则的推导中

自动变量

这些变量根据上下文(当前规则)自动生成值

  • $@ 目标文件
  • $^ 全部依赖文件
  • $< 全部依赖文件的第一项
  • $? 时间戳比目标文件还新的依赖文件
  • $(@D)$(@F) 分别指目标文件的目录名和文件名
  • $(<D)$(<F) 分别指第一项依赖文件的目录名和文件名



Zhu

有问题欢迎发邮件交流