首页 > 代码库 > Linux下安装Wireshark

Linux下安装Wireshark

 

 

              Linux下安装Wireshark

 

wireshark依赖于libpcap,所以如果系统中未安装libpcap,也要将其一并安装

 

一、下载源码

 

源码文件

wireshark-x.x.x.tar.gz         wireshark安装源文件

libpcap-x.x.x.tar.gz           libpcap安装源文件

 

下载地址

Wireshark 网址  http://sourceforge.net/projects/wireshark/

libpcap 网址    http://www.tcpdump.org/

 

 

二、安装

 

安装libpcap:这步安装的目的是给wireshark提供所需的pcap.h

       tar xvf libpcap-xxx.tar.gz

       cd libpcap-xxx

       ./configure

       make

              如果本步出错,则根据错误提示,查看相关的环境变量PATH是否正确,比如要用到bison这个文件,是要用/usr/bin/bison,而如果在环境变量PATH中/usr/bin比较靠后,则实际会用到其它目录下的bison,因此要做的就是把/usr/bin在PATH变量中提到前面

       make install

 

安装wireshark

tar xvf wireshark-xxx.tar.gz

cd wireshark-xxx

./configure

       如果在装wireshark之前没有安装libpcap,可能在wireshark安装执行 ./configure时报错“找不到pcap.h”,解决方法是先装libpcap源码包,再装wireshark

make

       如果报错“./gtk/main_menubar.c:3644: 找不到函数g_strcmp0()”

       此处g_strcmp0应该是某个已经存在的库文件中函数,但是系统中可能该库不存在,或该库中没有这个函数

       解决方法:

       ./plugins/asn1/packet-asn1.c的613行有函数g_strcmp()的定义,注意不是g_strcmp0()

       将这个函数的定义复制到./gtk/main_menubar.c中开始的某个位置,并将其名字改为g_strcmp0()

              static int

              g_strcmp0(gconstpointer a, gconstpointer b)

              {

                if (a == 0) a = empty;

                if (b == 0) b = empty;

               return strcmp(a, b);

              }

       同时,将./plugins/asn1/packet-asn1.c 463行的 static const char empty[] = ""; 也复制到./gtk/main_menubar.c的开始位置,因为g_strcmp0要用到empty

make install

 

 

三、运行

 

在shell中输入wireshark&即可运行图形化的wireshark工具

Linux下安装Wireshark