我尝试在我的原生 android 代码中使用 gnu++0x 功能。我使用的是最新版本(r8b,带有工具链 4.6),虽然使用 std::chrono 或 std::thread 的代码在使用 linux gcc 4.6 时运行良好,但似乎 android ndk 不支持这些功能。
为了编译,我在 Application.mk 文件中使用了以下标志:
APP_CPPFLAGS := -std=gnu++0x
APP_STL := gnustl_shared
APP_GNUSTL_CPP_FEATURES := rtti exceptions
我可以做错什么吗?是否有链接可以了解 android ndk 中 c++0x 支持的状态?
非常感谢 !
问候,
JB
只是这样的示例代码:
std::chrono::time_point<std::chrono::system_clock> start =
std::chrono::system_clock::now();
std::chrono::milliseconds duration (100);
std::this_thread::sleep_for(duration);
std::chrono::milliseconds elapsedTime =
std::chrono::duration_cast<std::chrono::milliseconds>
(std::chrono::system_clock::now() - start);
带有标题,
#include <chrono>
#include <thread>
使用 ndk-build,我收到如下错误消息:
error: 'chrono' in namespace 'std' does not name a type
....
error: 'std::this_thread' has not been declared
以及关于chrono和thread的一切!