AndroidStudio C ++ Compiler-alternativ

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

Medan jag försöker köra min kod, som inkluderar C ++-filer får jag följande fel -

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. 

Hur kan det lösas? Detta är mitt första projekt som involverade C ++-filer.

4 Comments
Asu 11/06/2016
Du måste aktivera "the-std = c ++ 11 eller -std = gnu ++ 11 kompilatoralternativ."
1 Christian Hackl 11/06/2016
Att lära C ++ på Android är en mycket dålig idé. Hur som helst måste du göra din IDE på rätt sätt till kompilatorn för att kunna använda C ++ 11-funktioner och / eller använda en kompilator för vilken C ++ 11 inte längre är experimentell. Jag hör att det finns någon knapp "Anpassa C ++ Support" eller rullgardinsmenyn någonstans i användargränssnittet som kan göra det för dig.
eyal 11/06/2016
Jag vet att jag måste använda -std = c ++ 11 eller -std = gnu ++ 11 men hur kan jag konfigurera det?
Michael 11/06/2016
Det finns flera sätt att bygga inbyggd kod från Android Studio, och jag ser ingen omnämnande av vilken du använder. Om du har en Android.mk-fil kan du lägga till några flaggor du vill ha till LOCAL_CPPFLAGS . Annars behöver du förmodligen använda någon typ av cppFlags egenskap i din build.gradle-fil.

2 Answers


eyal 11/06/2016.

Jag har byggt upp mitt projekt och använder C ++ 11 istället för ToolChain Default i Anpassa C ++ Support sida. Jag tycker att det är ett smutsigt sätt att lösa detta problem.

1 comments
Alex Cohn 07/30/2017
Kanske är 'ToolChain Default' inte det perfekta sättet att presentera ett av valen, men det här är det rena sättet att hantera detta problem. C ++ har olika inte precis kompatibla "lägen", t.ex. C ++ 11 och C ++ 13, och det är ditt ansvar att välja lämplig dialekt.

eyal 11/07/2016.

I appens byggnadsgrad under android -> defaultConfig kan du lägga till / ändra följande

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

Related questions

Hot questions

Language

Popular Tags