在windows上编译wireshark源代码

终于在windows上成功编译了wireshark源代码,个中酸辛,都是泪。。只能说要多试!

windows上编译wireshark共用到三个东西:wireshark源代码、python、cygwin


下面是编译成功所用的三种软件的版本:

wireshark源代码:

我用1.12.7和1.12.8都成功了,各种版本可以从https://www.wireshark.org/download/src/all-versions/下载

python:

我用的是python2.6版本

cygwin:

从网上下载最新版本,整个过程在线安装,以下库默认不安装,需要手动安装:

    Archive / unzip
    Devel / bison
    Devel / flex
    Interpreters / perl
    Utils / patch
    Web / wget
    dos2unix

准备工作做好了,开始正式的编译过程:

  1. 编译config.nmake文件

     (1)WIRESHARK_LIBS, 设置编译wireshark所需的库所在的目录,默认即可。(1.12.7和1.12.8是没有WIRESHARK_LIBS的,忽略即可)
     (2)PROGRAM_FILES,设置本机程序安装目录,默认即可。
     (3)MSVC_VARIANT,因为我使用VS2008编译,将VS2010前#去掉即可
     (4)CYGWIN_PATH,将其设置为cygwin的bin目录,例如C:cygwinin。
     (5)MSVCR_DLL,如果VS安装在D盘,请在这里相应的地方用绝对路径表示,而不要去修改前面的PROGRAM_FILES,否则会出现意想不到的错误。
    
  2. 编译wireshark

1)检查工具是否都存在:nmake -f Makefile.nmake verify_tools

2)执行nmake -f Makefile.nmake setup,下载一些东西,过程有点长,会有很多的信息,最后会显示出下图:

3)执行下nmake -f Makefile.nmake distclean,最后显示下图

4)执行nmake -f Makefile.nmake all,过程比较长,耐心等待,最后会显示下图:

成功编译后的wireshark源代码文件夹中出现了很多目标文件,还生成了一个wireshark-gtk2文件夹,里面有好几个exe文件,比如wireshark.exe,tshark.exe,dumpcap.exe等。具体如下所示:

这个图片就是wireshark-gtk2文件夹中的一部分。

体会:

编译过程中是遇到了很多问题的,但是只要环境配对了,很多小问题,多自己想想,多百度,总能找到解决方法,重要的是不放弃,一定会成功!

原文地址:https://www.cnblogs.com/myidea/p/5164856.html