我试图在Windows 7下的cygwin下安装libpcap,但是我有这个错误: $ ./configure 。 。 。 。 。 配置:错误:请参阅INSTALL获取更多信息帮助在cygwin上安装libpcap
我该如何解决这个问题? 我使用的是最新版本的libpcap-1.0.0。
我试图在Windows 7下的cygwin下安装libpcap,但是我有这个错误: $ ./configure 。 。 。 。 。 配置:错误:请参阅INSTALL获取更多信息帮助在cygwin上安装libpcap
我该如何解决这个问题? 我使用的是最新版本的libpcap-1.0.0。
我知道这是一个迟到的答复,但我只是通过相同的安装问题就在Windows 7上
在Windows上,你应该使用Winpcap的:http://www.winpcap.org/
http://mathieu.carbou.free.fr/wiki/index.php?title=How_to_install_Winpcap_/_Libpcap_under_Cygwin
libpcap的开发包可以从详细 http://www.winpcap.org/devel.htm
步骤来发现如下:
Setup Winpcap
Download and unzip the pack. We will use for this example WpdPack_4_0_1.zip.
Copy libraries like this:
- WpdPack\Lib\libpacket.a to cygwin\lib\
- WpdPack\Lib\libwpcap.a to cygwin\lib\
Create a folder cygwin\usr\include\pcap\
Copy all headers from WpdPack\Include to cygwin\usr\include\winpcap\
Be sure you have installed Winpcap libraries and that they are in your path by typing:
which packet.dll which wpcap.dll
For me they are in /cygdrive/c/WINDOWS/system32/
Building example using Cygwin
Open a cygwin prompt to WpdPack\Examples-pcap\basic_dump\ and execute:
basic_dump:
CFLAGS="-g -Wall -mno-cygwin -I /usr/include/pcap" LIBS="-lwpcap" PROG="basic_dump" gcc $CFLAGS -c $PROG.c gcc $CFLAGS -o $PROG.exe $PROG.o $LIBS ./$PROG.exe
basic_dump_ex:
CFLAGS="-g -Wall -mno-cygwin -I /usr/include/pcap" LIBS="-lwpcap" PROG="basic_dump_ex" gcc $CFLAGS -c $PROG.c gcc $CFLAGS -o $PROG.exe $PROG.o $LIBS ./$PROG.exe
iflist:
CFLAGS="-g -Wall -mno-cygwin -I /usr/include/pcap" LIBS="-lwpcap" PROG="iflist" gcc $CFLAGS -c $PROG.c gcc $CFLAGS -o $PROG.exe $PROG.o $LIBS ./$PROG.exe
pcap_filter (and others):
I think you can catch the pattern ;) Only replace PROG=... by the program name and it should compile.
UDPdump:
CFLAGS="-g -Wall -mno-cygwin -I /usr/include/pcap" LIBS="-lwpcap -lwsock32" PROG="UDPdump" gcc $CFLAGS -c $PROG.c gcc $CFLAGS -o $PROG.exe $PROG.o $LIBS ./$PROG.exe
You can test by doing a Time Synchronization with pool.ntp.org for example.
libpcap源码包括部分,但是不是所有的Windows支持。用于捕获网络流量的机制非常依赖操作系统(这是libpcap存在的原因 - 为了隐藏应用程序的细节)。
在UN * Xes上,该机制是操作系统的一部分,因此libpcap不必提供该机制。
在Windows上,操作系统中没有这样的机制,所以WinPcap结合了内核模式驱动程序,与驱动程序通信的低级库和使用低级库的libpcap模块。
libpcap源不包含驱动程序或低级库,因此仅为Windows构建libpcap版本是不够的。
正如其他答案所示,您需要WinPcap。