您的位置:首页 > 运维架构 > Linux

Linux下安装Wireshark

2012-02-21 13:10 190 查看
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工具

本文出自 “长风” 博客,请务必保留此出处http://mzjxjb.blog.51cto.com/715007/785613
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: