Makefile无法检测缺失的先决条件文件



我有一个makefile,负责将文件从文件夹a复制到文件夹b。

这里我有一个简单的makefile来描述我遇到的问题。例:

all: a.txt b.txt
%.txt: test/%.txt
        cp -a $< $@

当我调用make命令时:

make

它复制2个txt文件。

之后,我删除测试文件夹中的a.t txt并再次运行make

rm test/a.txt
make

我想make会检测到不可用的先决条件,但它输出:

make: Nothing to be done for `all'.

在这种情况下我怎么可能有错误输出?

谢谢! !

您正在使用一个模式规则,如果先决条件不可用,Make会忽略它。试试这个:

TEXTS := a.txt b.txt
all: $(TEXTS)
$(TEXTS): % : test/%
        cp -a $< $@

相关内容

  • 没有找到相关文章

最新更新