【问题标题】:makefile rule for lazy c++懒惰的 C++ 的 makefile 规则
【发布时间】:2012-06-25 17:34:09
【问题描述】:

我想在我的 makefile 中包含一条规则,用于将我的惰性 c++ .lzz 文件转换为它们各自的 .h.cpp 文件。

在我看来这是一个稍微不寻常的情况,两个文件依赖于一个文件,我不确定我能否正确设置依赖关系。

# something like...
%.cpp %.h : %.lzz
    lzz $<

谁有一个行之有效的规则?

【问题讨论】:

  • 你试过了吗?它奏效了吗?如果没有,你会得到什么错误(如果有的话)?

标签: makefile lazy-c++


【解决方案1】:

这对我来说是正确的。

来自制作信息页面:

具有多个目标的规则相当于编写许多规则,每个规则都有一个目标,除此之外都相同。相同的命令适用于所有目标,但它们的效果可能会有所不同,因为您可以使用 `$@' 将实际目标名称替换为命令。该规则也为所有目标提供了相同的先决条件。

【讨论】:

  • 来自here:模式规则可能有多个目标。与普通规则不同,这不会像许多具有相同先决条件和配方的不同规则一样起作用。如果模式规则有多个目标,make 知道规则的配方负责生成所有目标。该配方仅执行一次以生成所有目标。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-06
  • 2013-04-08
  • 1970-01-01
  • 2010-11-25
  • 2011-07-16
相关资源
最近更新 更多