如何在Windows上编译wireshark源码

在深受了几天编译wireshark源码的痛苦后,记录下自己编译wireshark的经验,希望能给今后需要编译wireshark的人一些帮助。这个方法是能编译最新的wireshark源码,现在网上找的一些方法都是旧的一些方法,编译最新的wireshark是行不通的。我参考的是一个英文的说明文档,如果阅读此文档的人没有困难的话,可以就此英文文档说明进行编译。附上地址:https://www.wireshark.org/docs/wsdg_html_chunked/ChSetupWin32.html (如果打不开,可能需要FQ)

现在详细介绍编译wireshark的步骤:

1、安装VS2013

社区版或旗舰版的都行,请一定按默认路径安装,这样可以减少很多麻烦。安装完成后,在cmd命令行下输入一下命令:C:\> xcopy "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include\Win32.Mak"  "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include"   注意:两个路径要用双引号引起来不然会提示有错。

2、安装Qt

下载安装包, qt-sdk-windows-x86-msvc2013_opengl。注意看清楚,要是msvc2013版的,也请按默认路径安装

3、安装Cygwin

Cygwin是在线安装的,在选择URL地址的时候可以选,http://mirror.kenerl.org,如果不行选择其中一个可以安装的就行,在进行选择安装包的时候,注意必须安装一下几个包:

  • Archive/unzip (not needed if using CMake)
  • Devel/bison (or install Win flex-bison - see Chocolatey below)
  • Devel/flex (or install Win flex-bison - see Chocolatey below)
  • Devel/git (recommended - see discussion about using Git below)
  • Interpreters/perl
  • Utils/patch (only if needed) (may be Devel/patch instead)
  • Web/wget (not needed if using CMake)
  • asciidoc
  • Interpreters/m4

如果看不大懂这些包的时候,将Archive,Devel,Interpreters,Utils,Web这几个包全部安装就行了。注:也是默认路径安装

4、安装python

这很简单,安装python27,默认路径安装就行。

5、下载wireshark源码

最好在GitHub上下载一般为最新的,或者到 https://www.wireshark.org/download/src/all-versions/ 下载最新的wireshark源码。

下载完源码后,将其命名为wireshark,并在C盘的根目录下新建一个名为Development的文件夹,然后将wireshark源码存放在里面。

6、配置相关环境(最为关键)

6.1、进入VS2013 --》 Visual studio tools,然后打开x86本机命令行工具,进行一下环境设置

> set CYGWIN=nodosfilewarning

> set WIRESHARK_BASE_DIR=C:\Development

> set WIRESHARK_TARGET_PLATFORM=win32  (如果你的vs2013是64位版本的就改为:win64)

> set QT5_BASE_DIR=C:\Qt\Qt5.3.0\5.3\msvc2013 (注意此处Qt的版本,你有可能安装的是Qt5.3.2,根据自身情况做修改)

> set WIRESHARK_VERSION_EXTRA=-YourExtraVersionInfo

6.2、然后转到wireshark的目录下

> cd  C:\Development\wireshark

6.3、验证安装工具:

> nmake -f Makefile.nmake verify_tools

如果出现以下提示信息就说明没问题

Microsoft (R) Program Maintenance Utility Version 12.00.21005.1
Copyright (C) Microsoft Corporation.  All rights reserved.
ERROR: The contents of ‘E:\Wireshark\Wireshark-win32-libs\current_tag.txt‘ is (unknown).
It should be 2014-10-01.Checking for required applications:
cl: /cygdrive/c/Program Files (x86)/Microsoft Visual Studio 12.0/VC/BIN/cl
        link: /cygdrive/c/Program Files (x86)/Microsoft Visual Studio 12.0/VC/BIN/link
        nmake: /cygdrive/c/Program Files (x86)/Microsoft Visual Studio 12.0/VC/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
        peflags: /usr/bin/peflags
        perl: /usr/bin/perl
        C:\Python27\python.exe: /cygdrive/c/Python27/python.exe
        C:\Qt\Qt5.3.0\5.3\msvc2013\bin\qmake: /cygdrive/c/Qt/Qt5.3.0/5.3/msvc2013/bin/qmake
        sed: /usr/bin/sed
        unzip: /usr/bin/unzip
        wget: /usr/bin/wget注:那个“ERROR”可以忽略。

6.4、安装库> nmake -f Makefile.nmake setup如果没有出现什么错误,继续进行下一步

6.5、编译wireshark> nmake -f Makefile.nmake all在编译过程中如果没有出现任何错误,恭喜你已经编译成功了。编译成功后会生成两个版本的可执行文件,一个是Qt版本的在: C:\Development\wireshark\wireshark-qt-release\Wireshark.exe。 另一个是老的GTK版本的: C:\Development\wireshark\wireshark-gtk2\Wireshark-gtk.exe.

注:如果编译过程中有出现什么错误,根据错误进行相应的修改,修改完后先执行命令> nmake -f Makefile.nmake distclean再重新编译> nmake -f Makefile.nmake all

 总体小结:

  1、这是针对编译新版wireshark编码的方法,网上一些方法都是针对旧版本的,此方法本人亲测可行。

  2、希望严格按照步骤一步步下来,可以少走弯路,上述软件一定按默认路径安装,可以减少修改路径的麻烦,不默认安装也行,不过到时修改路径会遇到各种问题,除非你对wireshark的源码很熟悉。

  3、以上安装是针对32位系统的,64位系统也是一样,只是相应软件下载64位版本的。

  4、如果你是看我提供的英文版的说明,它提供了一种在线安装的方法。不过建议还是下载安装包安装,在线安装一般都不会成功,也不知什么原因。

ps:配置编译的过程很痛苦,不过编译成功后,你会收获很多,也祝你在编译wireshark源码的路上,少走弯路。

时间: 2024-12-18 06:36:42

如何在Windows上编译wireshark源码的相关文章

【转】Ubuntu10.04上编译Android源码(Build Android source in Ubuntu10.04 Platform)

原文网址:http://blog.csdn.net/chenyafei617/article/details/6570928 一.Introduction 今天我们就来谈谈如何在Ubuntu平台上面编译android源码,我的是ubuntu10.04版本,在进行编译流程讲解之前我想讲一下 make .make snod .make kernel的作用,m.mm.mmm它们的作用以及区别. - make:                 编译源码,生成相应的系统镜像文件.             

CentOS6.5上编译OpenJDK7源码

本文地址:http://www.cnblogs.com/wuyudong/p/build-openjdk7.html,转载请注明源地址. 采用开源的OpenJDK版本,获取其源码的方式有两种: 通Mercurial代码版本管理工具从Repository中直接取得源码,但是速度太慢,需要花费数小时 直接下载官方打包好的源码包(推荐) 下载源码openjdk-7u6-fcs-src-b24-28_aug_2012.zip,解压,下载地址如下: http://www.java.net/download

如何在windows上编译Chromium (CEF3) 并加入MP3支持(二)

时隔一年,再次编译cef3,独一无二的目的仍为加入mp3支持.新版本的编译环境和注意事项都已经发生了变化,于是再记录一下. 一.编译版本 cef版本号格式为X.YYYY.A.gHHHHHHH X为主版本号,当前只有3 YYYY为chromium分支号 A为递增的svn提交版本号 HHHHHHH为7位git提交hash 此次编译cef版本为3.2704.1434.gec3e9ed 二.编译条件 快速稳定的VPN,下载chromium源码必需,推荐nydus 60G磁盘空间 64位操作系统,Win

如何在windows上编译Tesseract OCR

获取Tesseract源码的方式有很多.可以直接从repo获取,也可以下载压缩包.不过编译的时候往往也会出现各种奇怪的问题.这里介绍如何简单的配置和编译源码. 参考原文:How to Build Tesseract OCR Library on Windows 编译Tesseract 下载 Windows installer of tesseract-ocr 3.02.02 安装 安装过程中勾选Tesseract development files: 编译 在安装目录中找到vs2008到工程目录

菜鸟起飞:第一次在ubuntu上编译android源码

算一算自己干android开发,还差那么几个月就要满两年了,可是自己连android源码都没有编译过一次,想想真是说不过去,就想想编译一次,中间还真是遇见了不少的问题,在此写一篇博客供大家参考. 切记:每个人的环境都不相同,可能我的编译过程可以成功,但是对于你的就不成功,在遇到问题的时候要具体对待,具体解决,关键就在于恒心与毅力. -----------------------------------------------------------------------------------

Windows下编译MySQL源码

1. 编译环境 visual studio 2013 cmkake 3.1.3(注意版本,为了支持vs2013) bison   2.4.1 MySQL 5.6.23 2.安装cmake.bison注意可能需要把cmake和bison的bin目录添加到Path环境变量中 注意:bison 2.1以上版本 3. 准备MySQL源码 用记事本打开 mysql-5.6.23\sql\sql_locale.cc 文件,将其以 utf-8进行另存,并用另存后的 sql_locale.cc 文件替换 mys

在 iOS 上编译 webkit 源码

准备工作 买一台 mac 下载并安装 Xcode 下载源码 git clone git://git.webkit.org/WebKit.git WebKit 这个可能要耗费很久很久 编译源码 打开 Xcode 为 ios 模拟器 build 命令行工具的权限 sudo ./WebKit/Tools//Scripts/configure-xcode-for-ios-development 否则,会报错如下 target specifies product type 'com.apple.produ

npm grunt在mac上编译bootstrap源码

因为gmu需要用编译的方式下载,于是联想到bootstrap什么less sass编译 less先学,据说基于js编译和less编译器,安装起来详细, sass据网上介绍基于ruby, 以下为在mac上下载编译boostrap过程 1.安装node.js brew install node.js就可以了 2.sudo npm install bootstrap(记住npm命令需要加sudo) 3.进入bootstrap sudo npm install(根据package.json编译)(再次提

Build Slic3r on Windows // 如何在Windows上编译Slic3r

下载Strawberry Perl 5.22 64bit绿色版,解压缩到某个地方,比如C盘根目录,比如 C:\strawbrry-perl-5.22.2.1-64bit-portable 下载Boost 1.59,解压缩到某处,比如 C:\boost_1_59_0 注意,下载的Strawberry Perl内有个portable.bat,可以设置好Perl运行环境,而且那个Perl附带了gcc 4.9.下面所有的命令都在这个命令行环境下执行. 在那个命令提示符内切换到Boost的解压缩目录,输入