帮助在 cygwin 上安装 libpcap

问题描述 投票:0回答:4

我试图在 Windows 7 上的 cygwin 下安装 libpcap 但出现此错误: $ ./配置 。 。 。 。 。 配置:错误:请参阅安装以获取更多信息

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

cygwin libpcap
4个回答
11
投票

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. 像这样复制库:

    • WpdPack\Lib\libpacket.a 到 cygwin\lib\
    • WpdPack\Lib\libwpcap.a 到 cygwin\lib\
  3. 创建文件夹cygwin\usr\include\pcap\

  4. 将所有标头从 WpdPack\Include 复制到 cygwin\usr\include\winpcap\

  5. 确保您已安装 Winpcap 库并且它们位于您的路径中,输入:

    which packet.dll
    which wpcap.dll
    

对我来说,它们位于 /cygdrive/c/WINDOWS/system32/

使用 Cygwin 构建示例

打开 cygwin 提示符到 WpdPack\Examples-pcap asic_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

如果列表:

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.

UDP转储:

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 进行时间同步来进行测试 示例。


5
投票

libpcap 源代码包含部分(但不是全部)Windows 支持。 用于捕获网络流量的机制非常依赖于操作系统(这就是 libpcap 存在的原因 - 向应用程序隐藏该详细信息)。 在 UN*Xes 上,该机制是操作系统的一部分,因此 libpcap 不必提供该机制。

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

libpcap 源代码不包含驱动程序或低级库,因此不足以构建适用于 Windows 的 libpcap 版本。

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


4
投票

在 Windows 上,您应该使用 Winpcap:

http://www.winpcap.org/


0
投票
WinPcap is deprecated!


您必须使用
    npacap
  • libpcap
    
    
  • 尚不清楚 Cygwin 最适合使用哪一个,但可以在这里找到它们:

  • https://npcap.com/

    - 使用npcap(wireshark、nmap)

    
    

  • https://www.tcpdump.org/

    - 使用 libpcap

    
    

  • https://github.com/nmap/npcap

  • https://github.com/the-tcpdump-group/libpcap

© www.soinside.com 2019 - 2024. All rights reserved.