2017-06-16 40 views
0

コンパイルnginxの場合、C++モジュールには-std=c++11フラグが必要です。 --with-cc-opt="-std=c++11"でnginxを設定してからmakeを設定するとそれは私にタイトルで説明されているエラーを与える。どうすればnginxのソースコードやコンパイラを変更せずにコンパイルすることができますか(現在はgcc 4.8です)?cc1:エラー:コマンドラインオプション '-std = C++ 11'はC++/ObjC++では有効ですが、Cでは使用できません[-Werror]

+0

NginxソースはCでビルドシステムはCコンパイラでコンパイルされます。 '-std = C++ 11'はC++コンパイラのフラグです。 –

+0

@BorkoJandrasそのフラグは、C++で書かれたモジュール用です。 –

+0

configureスクリプトのヘルプに '--with-cc-opt = OPTIONSがCコンパイラオプションを追加設定しました。これは、このフラグがCソースでも使用されることを意味します。 –

答えて

0

ドキュメントによれば、 "--with-cc-opt = parameters - CFLAGS変数に追加される追加パラメータを設定します。"

CFLAGSはCコンパイラのスイッチの追加を可能にしますが、CXXFLAGSはC++コンパイラを呼び出すときに使用されます。

関連する問題