Gcc makefile中的通配符目标不';行不通

Gcc makefile中的通配符目标不';行不通,gcc,makefile,g++,wildcard,Gcc,Makefile,G++,Wildcard,我的Makefile中有一条简单的规则: PP=g++ -std=c++0x %.o: $.cpp $(PP) $< -c -o $@ 但事实上: >make parse_utils.o g++ -c -o parse_utils.o parse_utils.cpp 我得到了一个编译错误,因为我使用了C++11语法 这个通配符规则错误吗?您的目标错误。改变 %.o: $.cpp 到 %.o: $.cpp %.o: %.cpp

我的
Makefile
中有一条简单的规则:

PP=g++ -std=c++0x
%.o: $.cpp
        $(PP) $< -c -o $@
但事实上:

>make parse_utils.o
g++    -c -o parse_utils.o parse_utils.cpp
我得到了一个编译错误,因为我使用了
C++11
语法


这个通配符规则错误吗?

您的目标错误。改变

%.o: $.cpp

%.o: $.cpp
%.o: %.cpp