Приветствую!
Нужен некий функционал из fdisk (проблема не в нем), взял его с git, собрал, все работает, пытаюсь тянуть инклуды в свой проект простым
#include "./util-linux/include/c.h"
после чего получаю ошибку
In file included from Recoder.cpp:30:0:
./util-linux/include/c.h:402:3: error: #error "System with usleep() or nanosleep() required!"
# error "System with usleep() or nanosleep() required!"
^~~~~
./util-linux/include/c.h: In function ‘void errmsg(char, int, char, const char*, ...)’:
./util-linux/include/c.h:222:39: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
prog_inv_sh_nm_from_file(__FILE__, 1)
^
./util-linux/include/c.h:251:26: note: in expansion of macro ‘program_invocation_short_name’
fprintf(stderr, "%s: ", program_invocation_short_name);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
makefile:37: ошибка выполнения рецепта для цели «Recoder»
make: *** [Recoder] Ошибка 1
Сам c.h понимаю стандартный, но что нужно компилятору не понимаю в этом месте, подскажите???
static inline int xusleep(useconds_t usec)
{
#ifdef HAVE_NANOSLEEP
struct timespec waittime = {
.tv_sec = usec / 1000000L,
.tv_nsec = (usec % 1000000L) * 1000
};
return nanosleep(&waittime, NULL);
#elif defined(HAVE_USLEEP)
return usleep(usec);
#else
# error "System with usleep() or nanosleep() required!"
#endif
}