8

我正在开发 Fedora 17,我想用 libpcap 编程。问题是我的计算机没有找到 pcap.h,因为我已经安装了 libpcap 和 libpcap-devel,这真的很奇怪。我相信使用该库的我的站上也可以使用wireshark 和snort。所以当我用...编译我的代码时

#include <pcap.h>
... Code

并使用 gcc my_file.c -lpcap,我得到编译器错误说......找不到 pcap.h。奇怪的是我在 /libraries/ 目录中看到了我的 libpcap.so 文件。我弄完了 ..

yum 安装 libpcap 和 yum 安装 libpcap-devel

我不知道 Fedora 为什么要这样对我。

谢谢你的帮助!

4

4 回答 4

16

您的库可能丢失,安装并链接它

yum install libpcap-devel

在你的makefile中添加:

-L/usr/lib -lpcap
于 2013-10-11T10:43:17.557 回答
7

尝试

~$ whereis pcap

然后正如mata所说

gcc -lpcap -I{path} file.c

{path}给您的路径在哪里whereis,您将选择末尾带有 pcap.h 子字符串的路径(没有 pcap.h 部分)。

于 2012-11-12T02:03:08.903 回答
3

您必须指定安装标头的文件夹,例如:

gcc -I/usr/include/pcap my_file.c -lpcap

尝试locate pcap.h找到与-I交换机一起使用的正确目录。

于 2012-11-12T01:40:34.680 回答
0

要在 C++ 中执行程序:

对于 c++ 程序

 g++ program_name.cpp -lpcap 
于 2017-09-27T11:45:14.073 回答