我在Makefile
:
PP=g++ -std=c++0x
%.o: $.cpp
$(PP) $< -c -o $@
当我运行make parse_utils.o
时,执行的命令应为:
g++ -std=c++0x parse_utils.cpp -c -o parse_utils.o
但事实上它是:
>make parse_utils.o
g++ -c -o parse_utils.o parse_utils.cpp
我收到编译错误,因为我使用了C++11
语法。
这个通配符规则是错误的吗?
答案 0 :(得分:1)
你的目标是错误的。变化
%.o: $.cpp
到
%.o: %.cpp