我正在使用
Android studio 1.3.2 ndk-r11b-windows-x86_64,并尝试使用本机代码和C11功能(share_ptr,weak_ptr等)构建项目,但是有一些错误.例如:
Error:(22,6) error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
问题是:如何使用C11与Android Studio NDK?
附:
我添加了标志cppFlags.add(“-std = c 11”)到“build.gradle”
android.ndk { moduleName = "game" cppFlags.addAll(["-I${file("src/main/jni/native_app_glue")}".toString(),"-I${file("src/main/jni")}".toString(),"-I${file("src/main/jni/data")}".toString()]) cppFlags.add ("-std=c++11") ldLibs.addAll(["android","EGL","GLESv2","OpenSLES","log"]) stl = "stlport_static" }
但似乎没有奏效.
解决方法
在应用程序的build.gradle文件我去android – > defaultConfig – > externalNativeBuild – > cmake,我从这里编辑cppFlags参数
cppFlags ""
对此
cppFlags "-std=c++11"