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工具

上一篇:在RE了16次之后,没想到还可以这样Runtime error


下一篇:FrameBuffer系列 之 介绍