帮助在cygwin上安装libpcap

时间:2010-03-07 12:41:38

标签: cygwin libpcap

我试图在Windows 7上的cygwin下安装libpcap但是我遇到了这个错误:     $ ./configure     。     。     。     。     。     configure:error:请参阅INSTALL获取更多信息

我该如何解决这个问题? 我使用的是最新版本的libpcap-1.0.0。

3 个答案:

答案 0 :(得分:8)

http://mathieu.carbou.free.fr/wiki/index.php?title=How_to_install_Winpcap_/_Libpcap_under_Cygwin

可以从中找到libpcap开发包 http://www.winpcap.org/devel.htm

详细步骤如下:

  

设置Winpcap

     
      
  1. 下载并解压缩包。我们将使用此示例WpdPack_4_0_1.zip。

  2.   
  3. 像这样复制库:

         
        
    • WpdPack \ Lib \ libpacket.a到cygwin \ lib \
    •   
    • WpdPack \ Lib \ libwpcap.a到cygwin \ lib \
    •   
  4.   
  5. 创建一个文件夹cygwin \ usr \ include \ pcap \

  6.   
  7. 将所有标题从WpdPack \ Include复制到cygwin \ usr \ include \ winpcap \

  8.   
  9. 请确保您已安装Winpcap库,并且输入以下内容表明它们在您的路径中:

    which packet.dll
    which wpcap.dll
    
  10.         

    对我来说,他们在/ cygdrive / c / WINDOWS / system32 /

         

    使用Cygwin构建示例

         

    打开一个cygwin提示符到WpdPack \ Examples-pcap \ basic_dump \并执行:

         

    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(和其他人):

    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
    
         

    您可以通过与pool.ntp.org进行时间同步来测试   示例

答案 1 :(得分:4)

我知道这是一个迟到的回复,但我刚刚在Windows 7上遇到了相同的安装问题。

在Windows上,您应该使用Winpcap:http://www.winpcap.org/

答案 2 :(得分:4)

libpcap源包括Windows支持的部分内容,但全部。用于捕获网络流量的机制非常依赖于操作系统(这就是存在libpcap的原因 - 从应用程序隐藏该详细信息)。

在UN * Xes上,该机制是操作系统的一部分,因此libpcap不必提供该机制。

在Windows上,操作系统中没有这样的机制,因此WinPcap结合了内核模式驱动程序,与驱动程序对话的低级库,以及使用低级库的libpcap模块。

libpcap源代码不包含驱动程序或低级库,因此仅为Windows构建libpcap版本是不够的。

正如其他答案所示,您需要WinPcap。