【发布时间】:2022-12-11 21:13:44
【问题描述】:
我有一个不是文件名的 make 目标。
BUILD_DIR := <my build directory path>
build : $(BUILD_DIR)
recipe
release : build
我观察到,当我第一次调用 build 时,它会执行预期的 build 的配方。但是,当我调用 release 后跟 build 时,它会重新执行 build。我知道为什么会这样,我从 GNU 中读到 make 引用 -
如果您编写了一个规则,其配方不会创建目标文件,则每次目标重新制作时都会执行该配方。
我们有办法避免
build被重建吗?我不能简单地打电话给release。我的期望是调用build,然后调用release,build在调用release时不应重新执行。我知道我可以简单地删除release的依赖,但我不喜欢那样做。有人可以推荐更好的出路吗?
【问题讨论】:
-
有什么线索吗?让我知道是否需要任何其他信息。但我想这个问题是不言自明的。
标签: makefile gnu-make target recipe