我正在使用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 install libpcap 和 yum install libpcap-devel
我不知道为什么Fedora会对我这样做。
感谢您的帮助!
答案 0 :(得分:12)
您的图书馆可能遗失,安装并链接
yum install libpcap-devel
在你的makefile中添加:
-L/usr/lib -lpcap
答案 1 :(得分:6)
尝试
~$ whereis pcap
然后就像马塔说的那样
gcc -lpcap -I{path} file.c
其中{path}
是whereis
给你的路径,你将选择末尾带有pcap.h子串的那个(没有pcap.h部分)。
答案 2 :(得分:2)
您必须指定安装标头的文件夹,例如:
gcc -I/usr/include/pcap my_file.c -lpcap
尝试locate pcap.h
找到与-I
开关一起使用的正确目录。
答案 3 :(得分:0)
用c ++执行程序:
用于c ++程序
g++ program_name.cpp -lpcap