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