0

我在 Windows 7 上使用 Dev C++ 和 WinPcap(开发人员包)。Dev c++ 显然无法找到 pcap.h,即使我在项目选项中包含 /include/ 目录,在编译时它也会显示错误消息“pcap.h:没有这样的文件或目录”。(以及许多其他错误)。这是我的代码:

#include <stdlib.h>
#include <stdio.h>
#include <pcap.h>

int main(int argc, char **argv)
{
pcap_t *fp;
char errbuf[PCAP_ERRBUF_SIZE];
u_char packet[100];

    return 0;
}

我保持简单。我最初在 Visual Studio (C++) 中工作,但分发使用 Visual C++ 编译的代码需要在目标系统上安装 Microsoft C 运行时库。我只想能够分发最终的可执行文件并让它在任何机器上工作。

我检查了给编译器的命令行。它确实有 -I [path] 选项。那么有什么我想念的吗?

附带说明:我已经用 g++(来自 dev c++ 安装目录)编译了上面的代码,并且编译正确。但是当我试图链接它时,生成的可执行文件在运行时就崩溃了。

4

1 回答 1

1

您的问题有点不清楚,但是您的旁注听起来好像您可以编译它(即pcap.h找到了标头)并且您的问题在于链接。

要将目录添加到库的搜索路径,请使用-LPATHwherePATH是包含libpcap. 将其实际添加到链接-lpcap器调用中的链接使用中,例如

$ g++ -o main -LPATH main.o -lpcap
于 2011-09-26T18:42:27.713 回答