「Linux」Ubuntu12.10的Libpcap1.3安装过程

本文档详细介绍了libpcap库的安装步骤及测试过程。首先通过wget下载libpcap-1.3.0.tar.gz并进行解压、配置、编译安装;接着通过ln命令创建软链接解决调用问题;最后编写并执行一个简单的C程序来测试libpcap的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于课设的需要,以前的教程都比较久远了,今晚弄了一个,顺手写下教程……

1. 安装过程

scue@Link:~$ wget http://www.tcpdump.org/release/libpcap-1.3.0.tar.gz
scue@Link:~$ tar zxvf libpcap-1.3.0.tar.gz
scue@Link:~$ cd libpcap-1.3.0/
scue@Link:~/libpcap-1.3.0$ ./configure 
scue@Link:~/libpcap-1.3.0$ sudo make install

2. 现在已经安装好了,但运行需要调用它的程序时候还是不能调用到它的,需要ln下

# 先找到它的位置
scue@Link:~/libpcap-1.3.0$ whereis libpcap.so*
libpcap: /usr/local/lib/libpcap.a /usr/local/lib/libpcap.so
# 找到它之后,使用ln -s创建链接到/us/lib/目录下
scue@Link:~/libpcap-1.3.0$  sudo ln -s /usr/local/lib/libpcap.so /usr/lib/libpcap.so.1

3. 现在我们来编写一下小程序看看网络设备捕获的效果

 -- 开始编辑.c文件

scue@Link:~$ cd ~
scue@Link:~$ gedit testlibpcap.c

 -- 然后把以下代码复制进testlibpcap.c里边

#include<stdio.h>
#include<stdlib.h>
#include<pcap.h>
#include<errno.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<arpa/inet.h>
 
int main(int argc,char *argv[])
{
    char *dev;
    char *net;
    char *mask;
    int ret;
    char errbuf[PCAP_ERRBUF_SIZE];
    bpf_u_int32 netp;
    bpf_u_int32 maskp;
    struct in_addr addr;
    dev = pcap_lookupdev(errbuf);
    if(dev ==NULL)
    {
        printf("%s,这……啥也没有,退出!\n",errbuf);
        exit(1);
    }
    printf("设备名:%s\n",dev);
    return 0;
}

 -- 开始编译并执行程序

scue@Link:~$  gcc testlibpcap.c -lpcap -o testlibpcap.o
scue@Link:~$ ./testlibpcap.o 
no suitable device found,这……啥也没有,退出! 
scue@Link:~$
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值