Há uma distinção importante a ser feita sobre o local de origem dos arquivos de cabeçalho:
-
<time.h>
é fornecido pela glibc (por exemplo, o pacoteglibc-headers
) -
<linux/time.h>
é fornecido pelos cabeçalhos do kernel do Linux.
A alteração do kernel e de seus pacotes de cabeçalho não afetará <time.h>
. Apenas mudar a glibc fará isso.
Você deve descobrir que <time.h>
da glibc inclui <bits/time.h>
, que é resolvido como, por exemplo, /usr/include/x86_64-linux-gnu/bits/time.h
e define CLOCK_MONOTONIC_RAW
. Se não, e você não pode atualizá-lo, então você terá que recorrer a incluir código como este:
#include <time.h>
#ifndef CLOCK_MONOTONIC_RAW
# define CLOCK_MONOTONIC_RAW 4
#endif