Makefile中的简单模式规则并不总是匹配

时间:2014-12-17 14:23:26

标签: makefile gnu-make

我有这个非常简单的Makefile来从制表符分隔的数据文件创建图:

%s.png: %s.tsv
    Rscript make-plots.r $< $@

我有一个文件genus.tsv,我想从中制作一个情节。这样做如下:

$ make -v
GNU Make 3.81
$ make genus.png
Rscript make-plots.r genus.tsv genus.png

按预期工作。这是奇怪的部分。如果我从test.tsv创建了一个副本genus.tsv,并且我尝试从中创建一个图表,那么由于某种原因它会失败:

$ cp genus.tsv test.tsv
$ make test.png
make: *** No rule to make target `test.png'.  Stop.

我尝试过的任何其他.png目标都会发生同样的情况。我希望pattern rule能够匹配任何.png目标。为什么这不起作用?

0 个答案:

没有答案