C Ошибка библиотеки библиотеки PCAP
Я установил библиотеку pcap в свою Linux-систему, но при ее включении я получаю ошибки
/usr/include/pcap/bpf.h:88:1: error: unknown type name ‘u_int’
/usr/include/pcap/bpf.h:108:2: error: unknown type name ‘u_int’
/usr/include/pcap/bpf.h:1260:2: error: unknown type name ‘u_short’
/usr/include/pcap/bpf.h:1261:2: error: unknown type name ‘u_char’
/usr/include/pcap/bpf.h:1262:2: error: unknown type name ‘u_char’
In file included from ../src/test.c:1:0:
/usr/include/pcap/pcap.h:125:2: error: unknown type name ‘u_short’
/usr/include/pcap/pcap.h:126:2: error: unknown type name ‘u_short’
/usr/include/pcap/pcap.h:171:2: error: unknown type name ‘u_int’
...
make: *** [src/test.o] Error 1
Я включил
#include <pcap/pcap.h>
#include <sys/types.h>
#include <pcap-bpf.h>
в программе, что мне не хватает?
Ответы
Ответ 1
Удостоверьтесь, что вы НЕ определяете какой-либо из них:
-
__STRICT_ANSI__
-
_ISOC99_SOURCE
-
_POSIX_SOURCE
-
_POSIX_C_SOURCE
-
_XOPEN_SOURCE
-
_SVID_SOURCE
при создании вашей программы; они могут препятствовать определению типов данных BSD, таких как компиляция.
Ответ 2
Попробуйте добавить
-D_BSD_SOURCE
az CFLAG в ваш файл Makefile.