Linux下安装libpcap以及在Eclipse中配置

来源:互联网 发布:java api 1.7 中文 编辑:程序博客网 时间:2024/05/23 21:58

部分资料参考自http://blog.csdn.net/qinggebuyao/article/details/7715843,作者:qinggebuyao


libpcap是unix/linux平台下的网络数据包捕获函数包。

在Ubuntu中安装过程参照以下步骤: 


1、打开网址:www.tcpdump.org/ 下载 libpcap-1.0.0.tar.gz (512.0KB) 软件包,通过命令 tar zxvf libpcap-1.0.0.tar.gz 解压文件,并将其放入自定义的安装目录。


2、打开网址:flex.sourceforge.net/ 下载 flex-2.5.35.tar.gz (1.40MB) 软件包,通过 tar zxvf flex-2.5.35.tar.gz 解压文件,并将其放入上述自定义的安装目录中。

   注:如果没有编译安装此文件,在编译安装libpcap时,就会出现 “configure: error: Your operating system's lex is insufficient to compile libpcap.”的错误提示。


3、打开网址:ftp.gnu.org/gnu/bison/ 下载 bison-2.4.1.tar.gz (1.9MB) 软件包,通过 tar zxvf bison-2.4.1.tar.gz 解压文件,并将其放入上述自定义的安装目录中。

  注:如果没有编译安装此文件,在编译安装libpcap时,就会出现 "configure: WARNING: don't have both flex and bison; reverting to lex/yacc checking for capable lex... insufficient" 的错误提示。


4、打开网址:ftp.gnu.org/gnu/m4/ 下载 m4-1.4.13.tar.gz (1.2MB)软件包,通过 tar zxvf m4-1.4.13.tar.gz 解压文件,并将其放入上述自定义的安装目录中。

  注:如果没有编译安装此文件,在编译安装bison-2.4.1时,就会出现 “configure: error: GNU M4 1.4 is required”的错误提示。


5、而后依次进入目录m4-1.4.13,bison-2.4.1,flex-2.5.35,libpcap-1.0.0 并执行以下命令:

  (sudo) ./configure

  (sudo) make

  (sudo) make install


命令完成后,libpcap网络捕包接口程序方可使用。

在实际编程编译源文件的时候,需要注意要指定编译链接库。
#gcc test.c -o test -lpcap

注意:运行此类程序时需要以root的身份运行,因为系统不允许非root用户进行一些网络操作
注意:拷贝 libpcap-1.1-1.1/pcap文件夹到 /usr/include 下。并且到 /usr/lib/ 把libpcap.so.1.1.1 重命名为:libpcap.so.1

在Eclipse中进行C/C++开发时,需要配置工程的include目录和链接库,这相当于自动在编译时自动加下-lpcap命令,操作如下:

1、项目->属性->C/C++Build -> settings -> GCC C++ Complier -> Includes -> Include paths
      在Include paths中添加/user/include/pcap,这样程序就能找到#include<pcap.h>的位置

2、当前窗口左侧选择GCC C++ Linker-> Libraries
      在Libraries(-l)中添加pcap,这样在链接时会自动加上-lpcap命令

至此Eclipse已经配置好libpcap,可以进行代码的开发和调试了。