Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android NDK部分不支持chrono_Android_C++_C++11_Android Ndk_Chrono - Fatal编程技术网

Android NDK部分不支持chrono

Android NDK部分不支持chrono,android,c++,c++11,android-ndk,chrono,Android,C++,C++11,Android Ndk,Chrono,我正在尝试将chrono与Android NDK结合使用。到目前为止,我取得了一些成功,但有些功能不受支持。 我在我的Android.mk中添加了这一行: LOCAL_CPPFLAGS := -std=c++11 My Application.mk文件: APP_ABI := armeabi-v7a APP_STL := gnustl_static APP_CPPFLAGS := -frtti -fexceptions APP_PLATFORM := android-9 第一个问题是没有定

我正在尝试将chrono与Android NDK结合使用。到目前为止,我取得了一些成功,但有些功能不受支持。 我在我的Android.mk中添加了这一行:

LOCAL_CPPFLAGS  := -std=c++11
My Application.mk文件:

APP_ABI := armeabi-v7a
APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -fexceptions
APP_PLATFORM := android-9
第一个问题是没有定义稳定时钟。这一行:

std::chrono::steady_clock::time_point time = std::chrono::steady_clock::now();
生成此编译错误:

error: 'std::chrono::steady_clock' has not been declared
error: 'is_steady' is not a member of 'std::chrono::monotonic_clock'
我发现我可以用单调的时钟来代替,它可以工作,但这种类型应该已经被稳定的时钟所取代

第二个问题是没有为任何类型定义属性是稳定的

LOGD("high_resolution_clock is steady: ", std::chrono::monotonic_clock::is_steady);
生成此编译错误:

error: 'std::chrono::steady_clock' has not been declared
error: 'is_steady' is not a member of 'std::chrono::monotonic_clock'

有人知道NDK是否完全支持chrono吗我还想知道将c++11与NDK一起使用是否是个好主意。我不确定它是稳定的还是将来可能会改变。

我刚刚找到了一个解决方案。看起来您需要告诉您将要使用的gcc版本(我猜默认情况下是4.7)。我刚刚在Application.mk中添加了这一行

NDK_TOOLCHAIN_VERSION := 4.8

现在我可以使用稳定的时钟,而且是稳定的。

仅供参考,在C++11标准化过程的后期,
单调的时钟
被重命名为
稳定的时钟
是单调的
被重命名为
是稳定的
@HowardHinnant是的,我后来也看到了,无论如何,谢谢你指出:)