我希望std::chrono::steady_clock和std::chrono::system_clock使用<time.h>,相反,它从<sys/time.h>。
当我在这里达到stdlib的src的顶峰时:
https://github.com/gcc-mirror/gcc/blob/master/libstdc%2B%2B-v3/src/c%2B%2B11/chrono.cc
并且posix头文件<time.h>在编译器中,我同意需要将以下标志添加到make文件中(以允许std::chrono使用clock_gettime())。
cxx标志+=
-D_glibcx_USE_CLOCK_mononic
-D_glibcx_USE_CLOCK_REALTIME
-D_POSIX_TIMERS
-D_位置_单调_块\
我在time.c文件中定义了这些函数,并将它们包含在构建中。
将它们链接如下:
库名称+=
<my_libraries>
c
我使用的是gcc8.3&newlibc。
我希望对std::chrono::steady_lock::now()、std::chrono::system_clock::now()的调用使用clock_gettime()函数而不是_gettimeofday()。
我有一个准确的硬件时间,它是从clock_gettime()访问的。我已经通过在应用程序函数中直接调用它来验证这一点。我想改为使用c++std::chrono。
我错过了什么?