Android ndk std::to_string support
You can try LOCAL_CFLAGS := -std=c++11
, but note that not all C++11 APIs are available with the NDK's gnustl. Full C++14 support is available with libc++ (APP_STL := c++_shared
).
The alternative is to implement it yourself.
#include <string>#include <sstream>template <typename T>std::string to_string(T value){ std::ostringstream os ; os << value ; return os.str() ;}int main(){ std::string perfect = to_string(5) ;}
With NDK r9+ you can use llvm-libc++ which offers full support for cpp11.
In your Application.mk you have to add:
APP_STL:=c++_static
or
APP_STL:=c++_shared
Gradle
If you looking for solution for Gradle build system. Look at this answer.
Short answer.
Add the string
arguments "-DANDROID_STL=c++_shared"
in your build.gradle
. Like
android { ... defaultConfig { ... externalNativeBuild { cmake { ... arguments "-DANDROID_STL=c++_shared" } } } ...}