AndroidStudio C ++コンパイラオプション

eyal 09/05/2017. 2 answers, 83 views
c++ android-studio android-studio android-ndk android-ndk jni

C ++ファイルを含む私のコードを実行しようとすると、私は次のエラーが発生します -

Error:(32, 2) error: This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options. 

どのように解決することができますか? これはC ++ファイルに関連する最初のプロジェクトです。

4 Comments
Asu 11/06/2016
"-std = c ++ 11または-std = gnu ++ 11コンパイラオプション"を有効にする必要があります。
1 Christian Hackl 11/06/2016
AndroidでのC ++の学習は非常に悪い考えです。 とにかく、C ++ 11の機能を使用したり、C ++ 11がもはや実験的ではないコンパイラを使用するために、あなたのIDEがコンパイラに正しいフラグを渡すようにする必要があります。 私はあなたのためにそれを行うことができるUIのどこかに "C ++サポートのカスタマイズ"ボタンまたはドロップダウンメニューがあると聞いています。
eyal 11/06/2016
私は-std = c ++ 11または-std = gnu ++ 11を使用しなければならないことを知っていますが、どうすれば設定できますか?
Michael 11/06/2016
Android Studioからネイティブコードを作成する方法は複数ありますが、使用しているコードについては言及していません。 Android.mkファイルがある場合は、LOCAL_CPPFLAGSに必要なフラグを追加できます。 それ以外の場合は、おそらくbuild.gradleファイルで何らかのcppFlagsプロパティを使用する必要があります。

2 Answers


eyal 11/06/2016.

プロジェクトを再構築し、C ++サポートのカスタマイズページのToolChainの代わりにC ++ 11を使用しました。 私はそれがこの問題を解決するための汚い方法だと思う。

1 comments
Alex Cohn 07/30/2017
たぶん'ToolChain Default'は選択肢の1つを提示するのに最適な方法ではないかもしれませんが、これはこの問題に対処するきれいな方法です。 C ++には正確には互換性のないモードがあります。たとえば、C ++ 11やC ++ 13などです。適切な方言を選択するのはあなたの責任です。

eyal 11/07/2016.

アンドロイド - > defaultConfigの下にあるアプリケーションのビルドグラデルでは、以下を追加/変更できます

externalNativeBuild {
        cmake {
            cppFlags "-std=c++11"
        }
    } 

Related questions

Hot questions

Language

Popular Tags