【问题标题】:make file target $(%SYMBOLIC)制作文件目标 $(%SYMBOLIC)
【发布时间】:2017-02-18 17:49:43
【问题描述】:

谁能解释一下 $(%SYMBOLIC) 在下面的 make 文件目标中的含义?

R_all:  $(%SYMBOLIC)
    $(CD_MAKE) $(BASE_ROOT)    R_all

【问题讨论】:

  • 发布整个makefile

标签: c++ c makefile


【解决方案1】:

这只是一个名为%SYMBOLIC 的变量。由于% 字符,你不能在Makefile 中用普通的=:= 设置这样的变量,但是你可以用define 或在环境中设置它,如果你直接用@ 运行make 987654326@

【讨论】:

  • 您绝对可以使用=:= 来分配名称包含% 字符的变量...?
  • 我想这可能取决于 make 的版本,它是否将% 视为一个特殊字符,否则会干扰分配。
  • 可能某些 make 实现会出错,但没有任何版本的 GNU make 会犯这个错误。 GNU make 解析器首先寻找一个“分隔符”,它是一个冒号或等号等,一旦它发现它会根据它解释该行的其余部分。因此,如果分隔符是=:=,那么第一个单词将始终被视为变量名,即使它包含% 字符。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-18
相关资源
最近更新 更多