3

私の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
4

1 に答える 1

0

私のパターンには、パーセント記号と拡張子を区切るドット(ピリオド)がありませんでした。これに変更することで解決した問題:

%.o: %.cpp Makefile
    g++ -Wall -Wextra -MMD -MP -O2 -c -o $@ $<
于 2012-01-12T00:10:36.373 に答える