【发布时间】:2017-02-06 09:46:58
【问题描述】:
我正在 Android Studio 2.2 中编译 C++ 库代码。我遵循新指南,将所有文件添加到我的项目中并使用 CMake(和 CMakeLists.txt)编译它,例如 this。我想使用 C++14 功能,以及 atomic、stoi 等内容,但构建失败并出现错误。
error: no type named 'condition_variable' in namespace 'std'
error: no member named 'stoi' in namespace 'std'
这就是我的 CMakeLists 的样子(其他行设置源文件和其他内容):
find_library(GLES GLESv2)
include_directories(${COMMON_PATH} /usr/local/include)
set(ANDROID_STL "c++_shared")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -latomic")
add_library(native-lib SHARED ${COMMON_SRC})
target_link_libraries(native-lib ${GLES})
我在 android 页面 (here) 上找到了这篇文章,但我不知道在使用 CMakeLists 而不是 ndk-build 时如何以及是否可以做到这一点。我看到使用 c++_static 运行时解决它的其他问题,但仅使用 ndk-build。
【问题讨论】:
标签: android c++ android-ndk cmake