目前,我正在通过gnustl使用具有C ++ 11支持的NDK-r10c。不幸的是,我们的项目需要切换到stlport。从gnustl更改为stlport时,在编译过程中会引发许多错误。下面是Application.mk文件。
APP_PLATFORM := android-18
NDK_TOOLCHAIN_VERSION := 4.8
APP_ABI := armeabi-v7a
APP_STL := stlport_static
# APP_STL := gnustl_static
APP_CPPFLAGS := -std=c++11
ifeq ($(NDK_DEBUG),1)
APP_OPTIM := debug
else
APP_OPTIM := release
endif
似乎C ++ 11功能不可用:
-向量上的cbegin(),cend()
-向量上的data(),
-无法从cbegin()等推论出auto
最佳答案
STLport太旧了,根本不支持C ++ 11。
-std = c ++ 11之类的标志只会影响编译器,而不一定影响STL实现。
您将必须使用gnustl或libc ++
关于android - Android NDK C++ STLport,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26978606/