Windows下配置Wireshark

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Windows下配置Wireshark(Ethereal)编译环境

第一步,先下载Wireshark源代码,/download/src/wireshark-1.0.0.tar.gz 然后解压到C:\,你可以解压到其它地方,不过解压到C盘可以避免后面的一些相当烦人的问题.

第二步,安装cygwin.cygwin是运行在windows下的模拟linux环境的一个很牛的软件,具体详细信息请访问/。

2.1下载到cygwin的setup.exe后运行,按照说明一步一步下去,

2.2先选在线安装,Root Directory也选默认.

2.3因为setup.exe是先将文件下载到本地然后再安装的,所以这里选择的是你把下载后的文件放到哪里。这个随便个人爱好啦,这里需要留意一下,下面会用到这个路径。

2.4接下来的几步是选择网络,获取镜像列表,以及选择镜像地址,所以不截图了,直接下一步就可以。当到选择安装包时,请点下图标出的图标,然后确定软件包后面的字都变成install时点下一步.

等待吧,安装时间有点长。OK。完了以后先关闭,cygwin算安装完了,接下来就是要安装wireshark所需要的包了。

第三步,检查安装wireshark编译环境所必需的包.

3.1 将cygwin的bin目录作为环境变量加入到系统环境变量path中;

3.2 在Windows命令提示符窗口下进入到Wireshark的源码包目录下,找到config.nmake文件,修改WIRESHARK_LIBS=C:\wireshark-libs-1.0

CYGWIN_PATH=c:\cygwin\bin;

3.3 在Windows命令提示符窗口下运行:nmake -f Makefile.nmake verify_tools,有可能会返回类似下面一样的检查结果:

可以看出是没有安装flex包,所以需要手工去下载安装。下面网址基本都有。

/cygwin/release/

找到flex包,下载以flex-2.5.33-1.tar.bz2,注意最好是tar.bz2 的包。然后在刚才上文提到的setup.exe的保存已经下载文件的路径下面你会找到一个名字很奇怪的文件夹。进入到里面,然后建立一个flex的文件夹,把下载下来的文件拷贝到里面去,然后重新运行setup.exe,

需要注意的是,在选择安装方式时,如下图所示:

选择本地安装,在选择安装包的时候同样如步骤2.4.然后直接到最后就可以。

3.4安装完以后再次重新进行3.1-3.3的操作,直到出现全部检查通过信息提示为止。如下图:

OK.必要的包也装完了。

需要注意两点:

(1)上图中那个link:后面的路径如果是/usr/bin/link的话,需要进入到cgywin的bin目录下,将link.exe的名字改掉,改成别的,因为我们不用这个link,要用VC的link.

(2) python需要另外安装,使用下面链接下载:

/ftp/python/2.4.3/python-2.4.3.msi

第四步, 第一次编译之前使用distclean清除一下Win32编译不用到的文件:

> nmake –f Makefile.nmake distclean

第五步:在cmd.exe下执行nmake -f makefile.nmake all,根据错误信息来选择编译wireshark所必需的包。

/wireshark-win32-libs/tags

这个网址可以下载到几乎所有的包(注意要下载和编译时给出的提示信息一样,提示信息会给出完整路径)。如果嫌下载麻烦,也可以直接mail我索要。PS:这一步是相当相当的烦呀。安装完成以后,屏幕上会打印出可爱的一行字:Wireshark is ready to build. 胜利在望了

第六步:正式编译。编译有可能出现几个问题。

(1).提示找不到unistd.h文件。解决方法是在vc的include下建一个空的unistd.h就可以。

(2)如果出现如下的错误或者类似的错误,

提示ascend-scanner.c, k12text.c, 中ascendwrap的宏定义参数不对,直接使用UE替换wireshark源代码目录下的所有文件里面的所有wrap(n) 1为wrap( ) 1

(3)再使用UE将wireshark源代码目录下面所有的文件里面的(yy_n_chars), (size_t) num_to_read );修改成为(yy_n_chars), num_to_read );

(4) lemonflex-tail.inc的问题

这个问题的解决方法是: lemonflex-tail.inc提示47行什么const相关的错误,直接将TEXT_FUNC (const char *text)去掉const,改成:TEXT_FUNC (char *text)

第七步:当你看到大量的”复制文件到XXX”的提示的时候,说明你快要成功了。当最后胜利结束时,快到wireshark\ wireshark-gtk2或者wireshark\ wireshark-gtk1下面的目录下去看看成果吧~~

相关文档
最新文档