Windows上编译Wireshark源代码 Windows上编译Wireshark源代码 上编译Wireshark
最近需要开发Wireshark插件,分析一套协议,于是首先要解决的问题就是如何在 Windows环境下编译Wireshark,编译过程中也借鉴了一些网上的资料,但是基本都有问 题,在经历无数次的失败之后的摸索,最终在Wireshark编译成功。 在编译过程中需要以下软件包: Visual Studio 2008 Python Cygwin latest release Wireshark 1.4.4源代码 编译需要使用的lib库
安装VS2008编译器 安装VS2008编译器 VS2008
开发文档说可以使用多个C编译器,包括Visual Studio 6.0, Visual Studio .NET, Visual Studio 2003, Visual Studio 2005, Visual Studio 2008等中的C编译器等. 安装好VS2008之后,请打开"你的VS安装目2008\Common7\Tools\"目录, 将其中的 VCVARS32.BAT 文件拷贝到C盘根目录下, 并改一下好输入的名字,如"V8.bat"这是为了以后时方 便. 以下几步默认会用此设置.
安装Cygwin Cygwin. 2. 安装Cygwin.
Cygwin简介: "Cygwin是一个在windows平台上运行的unix模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了很多好东西,著名的还有eCos,不过现已 被Redhat收购)。它对于学习unix/linux操作环境,或者从unix到windows的应用程序移 植,或者进行某些特殊的开发工作,尤其是
使用gnu工具集在windows上进行嵌入式系统开 发,非常有用。" 到coolersky/download. 在里面 Cygwin 2.510.2.2本 地安装包 并下载. 注意: 此ISO文件有668MB. 下载完成后, 用虚拟光驱工具载入镜像, 运行, 并选择安装以下几个编译
Wireshark所必需, 但默认又不安装的包 (分类/具体的包): Archive / unzip Devel / bison Devel / flex Interpreters / perl Utils / patch Web / wget 选择方法: 展开后点击skip,使其变为版本号即可. 请注意, 安装到默认的C:\cygwin目录.
windows开发平台安装Python 3. 安装Python
到/download/ 下载并安装用于Win32的Python 2.4.3版本. 注意: 请安装到默认的C:\Python24 目录.
下载Wireshark Wireshark源代码 4. 下载Wireshark源代码
输入这个网址,/download/src/all-versions/,从上面 下载Wireshark源代码,这里,值得一提的是,网上所有编译的Wireshark都是0.99.7版本 的,其实这个版本是很有问题的。这里建议编译1.2.7版本,我是在1.2.7版本上面编译成 功的。
5.下载编译需要的Lib库 下载编译需要的Lib库 Lib
到/Wireshark-win32-libs/trunk/packages/ 下 载在Win32下 编译Wireshark所需要的所有库. 当然有条件的可以按照开发文档说的自动 下载这些库了. 把这些库保存到 C:\Wireshark-win32-libs-1.4.4 目录. 注意: (1) 下载后的zip文件有些在文件夹中,如gtk, gtk-wimp, 要把这些文件夹中的文件全部 移到C:\Wireshark-win32-libs-1.4.4根目录下. (2) 下载后的zip文件保持原样放在C:\Wireshark-win32-libs目录下即可,不要解压! (3) 下载的库有的可能会和编译特定版本Wireshark需要的相应库的版本不一致。 (4) 当在后面的安装编译支持库一步出错时, 请参考出错信息, 并下载安装所需的库.
编辑config config. 5. 编辑ake
下载完成之后,在Wireshark目录里面打开ake,需要进行一些设置之后才 可以开始编译。 WIRESHARK_LIBS: 设置编译Wireshark所需的库所在的目录,默认即可。 (2)PROGRAM_FILES: 设置本机程序安装目录,默认即可。 (3)MSVC_VARIANT: 因为我使用VS2005编译,所以这里将值为MSVC2005的那一行前的#去掉,其余 MSVC_VARIANT项行首全部加上#注释掉。 (4)CYGWIN_PATH: 将其设置为Cygwin的bin目录,例如D:\Cygwin\bin。 (5)PYTHON及其后的PATH: 将其修改为本机和其安装目录的位置,例如D:\Python2.。 其余的选项都默认即可。 (6)MSVCR_DLL: 如果VS安装在D盘,请在这里相应的地方用绝对路径表示,而不要去修改前面的 PROGRAM_FILES,否则会出现意想不到的错误。
编译Wireshark 6. 编译Wireshark
用VS2008安装的VS2008命令提示进入或者通过CMD进入之后,再去运行VS下面的 vcvars32.bat。然后进去Wireshark目录,首先通过下面的命令检验一下:
nmake -ake verify_tools
如果正确的话,应该出现以下提示,如果不是缺少库之类的,请安装完成再运行以上 命令,直到出现没有错误。
C:\Wireshark>nmake -ake verify_tools Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
Checking for required applications: cl: /cygdrive/e/dev/vc6/VC98/BIN/cl link: /cygdrive/e/dev/vc6/VC98/BIN/link nmake: /cygdrive/e/dev/vc6/VC98/BIN/nmake bash: /usr/bin/bash bison: /usr/bin/bison flex: /usr/bin/flex env: /usr/bin/env grep: /usr/bin/grep /usr/bin/find: /usr/bin/find perl: /usr/bin/perl C:/: /cygdrive/c/ sed: /usr/bin/sed unzip: /usr/bin/unzip wget: /usr/bin/wget
然后下载编译过程中需要的库文件:
nmake -ake setup
这时,会在Wireshark_LIBS目录下下载一些库文件并解压完成。最后,执行以下命令 就可以开始编译了,整个编译过程时间上比较长,请耐心等待,在系统没有给出明确的提 示之前,不要关闭。
nmake -ake distclean 来清除源代码中用于在其他平台下编译的文件.
nmake -ake all
直到这里整个编译过程结束,Wireshark编译成功,开始准备在上面编写插件。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论