回答:
CPPFLAGS
C P re Pプロセッサのフラグ用であることになっています。CXXFLAGS
C ++コンパイラのフラグ用です。
makeのデフォルトルール(私のマシンでは、とにかく)はCPPFLAGS
ほぼすべてにCFLAGS
渡され、CのCXXFLAGS
コンパイルとリンク時にのみ渡され、C ++のコンパイルとリンク時にのみ渡されます。
x
です+
ので、それの側になっC++FLAGS
コンパイラを爆破します。...パーティーに遅れて到着した可能性がありますが、それでも間違ったパーティーに時間どおりに到着するよりはましです。
CPPFLAGS
で、NOTのためにC PのLU PのLUが、CXXFLAGS
です。
デフォルトでCPPFLAGS
は、CプリプロセッサにCXXFLAGS
渡されますが、C ++コンパイラには渡されます。
GNUマニュアルを作成します。このような質問(参照のための優れたリソースである暗黙的変数)。
デフォルトでは、これらは何かに設定されています。
実際には、すべてのプロジェクトが何をするかを知る必要があります。事実上、makeに組み込まれているこれらのデフォルトを使用することはありません。たとえば、「Cプリプロセッサへのフラグ」を意味するCPPFLAGSに依存している場合、気になるプロジェクトが「C ++コンパイラへのフラグ」を意味するために使用していることがわかります。代わりに。また、CFLAGSフラグはC ++コンパイル行に渡されますか?時々。常にではない。等々
make -p