我正在尝试编译仅NDK应用程序(命令行应用程序)。 我在很多方面使用C ++ 11,最近我添加了线程:
#include <thread>
现在我的编辑工作不正常,即使它适用于map / deque / vector / .... 出现以下错误:
jni/common.h:24:10: fatal error: 'thread' file not found
#include <thread>
^
1 error generated.
这是我的Application.mk
:
APP_PLATFORM := android-18
APP_CPPFLAGS := -Wall -frtti -fexceptions -fpermissive
APP_ABI := armeabi-v7a
APP_STL:=stlport_static
NDK_TOOLCHAIN_VERSION := clang
APP_OPTIM := release
这是我的Android.mk
:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := XXXX
LOCAL_C_INCLUDES := $(LOCAL_PATH)
LOCAL_C_INCLUDES += $(LOCAL_PATH)/XXXXX
LOCAL_SRC_FILES := ....
LOCAL_C_FLAGS := -O3 -std=c++11
LOCAL_CXX_FLAGS := -O3 -std=c++11
LOCAL_LDLIBS := -llog
include $(BUILD_EXECUTABLE)
我正在使用NDK 10d。
答案 0 :(得分:5)
好的,我会自己回答:)
似乎APP_STL:=stlport_static
不支持C ++线程。更改为APP_STL:=gnustl_static
可以解决问题。