缺少编译示例应用程序所需的 libpcap(-dev) 库

Missing libpcap(-dev) library required to compile the example application

我正在尝试在 ubuntu 14.04 上交叉编译 windows 的 nDPI 库附带的 ndpiReader.c 示例应用程序的源代码。该库位于 here, and the example is in this 目录中。

我使用这个 link 在我的计算机上安装了 libpcap。

我使用这个tutorial中的命令./configure --host=x86_64-w64-mingw32来编译源代码。但我仍然收到错误

ERROR: Missing libpcap(-dev) library required to compile the example application

ERROR: Please install it and try again

编译此 .c 代码我缺少什么?如果有人知道编译此代码的不同方法,请与我分享。我想要的只是为 ndpiReader.c 代码获取一个 windows .exe 文件。

如果您正在进行交叉开发,则需要安装 交叉开发 版本的库。您安装的是 libpcap-dev 的 native 开发版本,它可以让您为 Linux 发行版 构建 libpcap 程序 ,但是不适用于其他操作系统,例如 Windows.

Libpcap 在这里有点特殊,尤其是 Windows。对于 UN*Xes,libpcap 运行s 在 OS 的本地数据包捕获机制之上;对于 Windows,没有这样的本机机制,因此有一个 libpcap 到 Windows 的端口,称为 WinPcap,其中包括 libpcap 一个驱动程序需要安装在 Windows 机器上。

因此,即使您成功构建了 Windows 的程序版本,您也需要在 Windows 台机器上安装 WinPcap 运行程序,如果尚未安装。

然后您需要安装一个交叉开发的 WinPcap 库,以便与 MinGW 一起使用,以便 构建 该程序。

看起来好像 Fedora 有一个 mingw-wpcap 包, 可能 允许在 Fedora 上使用 MinGW 交叉编译 Windows 的 pcap 程序.我不知道 Ubuntu.

是否存在这样的包