11

Linux システムに pcap ライブラリをインストールしましたが、それを含めるとエラーが発生します

 /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>

プログラムでは、何が欠けていますか?

4

2 に答える 2

12

次のいずれも定義しないでください

  • __STRICT_ANSI__
  • _ISOC99_SOURCE
  • _POSIX_SOURCE
  • _POSIX_C_SOURCE
  • _XOPEN_SOURCE
  • _SVID_SOURCE

プログラムを構築するとき。それらは、コンパイルが不平を言っているもののようなBSDデータ型が定義されるのを妨げるかもしれません。

于 2013-03-13T19:22:30.113 に答える
11

追加してみる

     -D_BSD_SOURCE

Makefile に CFLAG を追加します。

于 2013-09-18T20:24:25.563 に答える