To compile the libpcap library,your Unix distribution must have a C compiler,and the lex and bison text parsers. For Open Source Unix distributions such as Linux and FreeBSD,the gcc,flex,and bison programs provide these functions.
安装Ubuntu操作系统后是没有安装C compiler、flex、bison。
1.安装gcc编译器
直接在终端执行sudo apt-get install gcc libc6-dev 安装gcc。
通过gedit编写helloworld.c测试gcc编译器:
#include
int main(){
printf("hello,world!\n");
return 0;
}
要编辑此程序,通过终端进入存放该c程序的文件夹路径后,输入以下命令进行编译:
gcc -o helloworld helloworld.c
然后继续在终端输入./helloworld运行程序。
2.安装GNU M4
这个是编译flex必备的环境,否则会提示“GNU M4 is required”的错误。
直接在终端执行sudo apt-get install m4安装GNU M4。
3.安装flex
直接在终端执行sudo apt-get install flex安装flex。
4.安装bison
直接在终端执行sudo apt-get install bison安装bison。
5.安装libpcap
上面四步完成后,通过终端进入存放该libpcap到文件路径,就可以使用下面三个指令安装libpcap环境。在这里,我是将libpcap文件夹暂放在Desktop里。
XX@ubuntu:~/Desktop/libpcap$./configure
XX@ubuntu:~/Desktop/libpcap$make
XX@ubuntu:~/Desktop/libpcap$sudo make install
第三步建议以sudo到身份执行该命令,否则可能因为权限原因而无法正确执行。
完成以上步骤后,
libpcap即安装成功。
6.测试libpcap
下面我们通过一个简单的例子测试来libpcap:
//device.c
#include
int main(int argc,char *argv[]){
char *dev,errbuf[PCAP_ERRBUF_SIZE];
dev=pcap_lookupdev(errbuf);
if(dev==NULL){
fprintf(stderr,"couldn't find default device: %s\n",errbuf);
return(2);
}
printf("Device: %s\n",dev);
return(0);
}
将该文件命名为device.c并存放在libpcap的保存文件夹里。
方法(1)
在终端输入编译指令:
XX@ubuntu:~/Desktop/libpcap$sudo gcc -o device device.c -lpcap
编译成功后输入运行指令:
XX@ubuntu:~/Desktop/libpcap$sudo ./device
成功运行后,即得到当前网卡到信息。
Device: eth0
转载链接:https://wenku.baidu.com/view/dfb94d4a767f5acfa1c7cdb1.html
原文链接:https://www.f2er.com/ubuntu/354278.html