windows下編譯wireshark源碼)

來源:互聯網
上載者:User

iWireshark Windows編譯環境搭建
1、安裝Cygwin
我已經將ISO檔案放在共用裡面了,連結如下:
\\172.24.154.28\Software\Private Tools\Networking Tools\ cygwin-release-20061108.iso
2、安裝python(2.4.4版本或2.5.2版本)
此處提供兩個版本的python, wireshark的源碼預設的是使用2.4.x版本的python,如果想用最新版本的wireshark,需要自己修改config.nmake檔案。python連結如下:
\\172.24.154.28\Software\Private Tools\Networking Tools\ python-2.4.4.msi
\\172.24.154.28\Software\Private Tools\Networking Tools\ python-2.5.2.msi
3、安裝TortoiseSVN(可選)
這是版本控制工具,用於從wireshark伺服器checkout代碼。這步不是必須的,可以下載離線代碼編譯,效果相同。TortoiseSVN連結如下:
\\172.24.154.28\Software\Private Tools\Networking Tools\TortoiseSVN-1.5.3.13783-win32-svn-1.5.2.msi
4、設定環境變數,包括兩部分,添加Cygwin的環境變數和python的環境變數。
5、Checkout原始碼或解壓原始碼
我下載了一個離線的源碼包,連結如下:
\\172.24.154.28\Software\Private Tools\Networking Tools\wireshark-1.0.3.tar.gz
編譯所需要的庫檔案本來是通過wget串連到伺服器上下載的,但是公司的網路需要設定代理才能串連外網,且wget是命令列模式的操作,設定代理很麻煩,我就下載了一個離線的庫檔案,連結如下:
\\172.24.154.28\Software\Private Tools\Networking Tools\wireshark-win32-libs.rar
6、檢查並修改設定檔config.nmake,主要修改了extra version和python路徑,使2.5版本能夠正常使用,如果是2.4版本,不需要修改。修改的內容主要有以下幾項:

 

# EXTRA版本號碼,定製自己的開發版本,我修改的版本號碼是”fetag-1001”
VERSION_EXTRA="-fetag-1001"

# 編譯時間候所需庫檔案的存放路徑
WIRESHARK_LIBS=D:\wireshark-$(PLATFORM)-libs

# 指定編譯器類型,只需要選擇一個自己機器上的Windows編譯器即可,其餘的編譯器# 選項全部注釋掉,我的編譯器是.NET2008
MSVC_VARIANT=MSVC2008

# 指定cygwin可執行程式的安裝路徑
CYGWIN_PATH=c:\cygwin\bin

#指定python可執行程式的安裝路徑
PYTHON="D:/python25/python.exe"
7、執行C:\Program Files\Microsoft Visual Studio 9.0\VC\bin>vcvars32.bat,設定2008編譯環境。
C:\Program Files\Microsoft Visual Studio 9.0\VC\bin>vcvars32.bat

C:\Program Files\Microsoft Visual Studio 9.0\VC\bin>"C:\Program Files\Microsoft
Visual Studio 9.0\Common7\Tools\vsvars32.bat"
Setting environment for using Microsoft Visual Studio 2008 x86 tools.
8、Verify編譯工具安裝情況:
D:\wireshark>nmake -f Makefile.nmake verify_tools

Microsoft (R) 程式維護工具 + 生產力 9.00.21022.08 版
著作權 (C) Microsoft Corporation。著作權所有,並保留一切權利。

Checking for required applications:
  cl: /cygdrive/c/Program Files/Microsoft Visual Studio 9.0/VC/BIN/cl
  link: /cygdrive/c/Program Files/Microsoft Visual Studio 9.0/VC/BIN/link

  nmake: /cygdrive/c/Program Files/Microsoft Visual Studio 9.0/VC/BIN/nmak
e
  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
  D:/python25/python.exe: /cygdrive/d/python25/python.exe
  sed: /usr/bin/sed
  unzip: /usr/bin/unzip
  wget: /usr/bin/wget

D:\wireshark>
9、安裝編譯時間所需的庫檔案,庫檔案的儲存路徑在config.nmake檔案中設定:
D:\wireshark>nmake -f Makefile.nmake setup 
Wireshark is ready to build.
10、開始編譯,注意:packet-sndcp-xid.c和packet-ieee80211.c需要重新轉存成編碼為UTF-8
格式的,否則編譯有問題。這是wireshark源碼包自身的問題,我已經提交了Bug Report,但願下一個版本能夠解決(現在提供的這個源碼版本是最新下載的,不知道是否存在這個問題):
D:\wireshark>nmake -f Makefile.nmake all
11、編譯結束後,運行程式:
D:\wireshark>wireshark-gtk2\wireshark.exe

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.