0

私は私の中にこの単純なルールを持っています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構文を使用したため、コンパイルエラーが発生しました。

このワイルドカード規則は間違っていますか?

4

1 に答える 1

1

あなたのターゲットは間違っています。変化する

%.o: $.cpp

%.o: %.cpp
于 2012-06-19T16:52:14.470 に答える