我的makefile有这个规则/配方:
%o: %cpp Makefile
g++ -Wall -Wextra -MMD -MP -O2 -c -o $@ $<
这个工作正常,直到我最近升级Cygwin并获得Make 3.82.90(之前的版本大概是3.81)。
现在使用make 3.82,它会忽略我的规则,而是使用内置规则来编译每个文件,例如:
g++ -c -o Foo.o Foo.cpp
答案 0 :(得分:0)
我的模式没有分隔百分号和扩展名的点(句点)。通过改变这个问题解决了问题:
%.o: %.cpp Makefile
g++ -Wall -Wextra -MMD -MP -O2 -c -o $@ $<