gpt4 book ai didi

android - Android NDK 部分不支持计时

转载 作者:搜寻专家 更新时间:2023-11-01 08:53:46 24 4
gpt4 key购买 nike

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

LOCAL_CPPFLAGS  := -std=c++11

我的 Application.mk 文件:

APP_ABI := armeabi-v7a
APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -fexceptions
APP_PLATFORM := android-9

第一个问题是没有定义 steady_clock。这一行:

std::chrono::steady_clock::time_point time = std::chrono::steady_clock::now();

生成此编译错误:

error: 'std::chrono::steady_clock' has not been declared

我发现我可以改用 monotonic_clock 并且它有效,但这种类型应该已被 steady_clock 取代。

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

LOGD("high_resolution_clock is steady: ", std::chrono::monotonic_clock::is_steady);

生成此编译错误:

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

现在我可以使用 steady_clock 和 is_steady。

关于android - Android NDK 部分不支持计时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20771753/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com