来自docs:
如果您希望消除默认的已知后缀而不仅仅是 添加到它们,为没有先决条件的'.SUFFIXES'编写规则。通过 特殊的安排,这消除了所有现有的先决条件 '.SUFFIXES'。然后,您可以编写另一个规则来添加后缀 想。例如,
.SUFFIXES: # Delete the default suffixes .SUFFIXES: .c .o .h # Define our suffix list
尝试以下makefile:
.c.o:
@echo done
.SUFFIXES::
all.o: phony
all.c:
.PHONY: phony
运行Make,我得到:
done
尽管我已经.SUFFIXES::
禁用了后缀。
顺便说一句,出于某种原因,它适用于版本3.81,我得到:
make: Nothing to be done for `all.o'.
答案 0 :(得分:1)
文档说:.SUFFIXES:
您写道:.SUFFIXES::
删除多余的冒号,它会起作用。