自己完成了
wireshark开发环境的搭建,主要参考资料是wireshark的官方developer-guide.pdf,网址:https://www.wireshark.org/docs/。
现把搭建过程中的主要步骤总结如下:
1、系统环境
win7x64 SP1
Microsoft Visual Studio 2015 Community Edition
Qt5.0.1
Python3.6.5
2、安装C编译器和SDK
选择的是vs2015社区版,下载地址:https://go.microsoft.com/fwlink/?LinkId=532606&clcid=0x409,这是一个在线安装版,本身很小,安装过程中会下载很多文件下来,如果是在虚拟机里安装,需要合理安排硬盘的大小,因为仅vs2015的安装大致需要12G的存储空间。
安装过程中,选择自定义安装(custom),在选择安装的组件时,开发手册建议仅安装“"Common Tools for Visual C++ 2015”,考虑到今后可能会使用C语言做开发,我同时选择了编程语言中的Visual C++,当然,我并不清楚不选择Visual C++组件是否可以进行C语言开发,安装过程很顺利,根据提示完成即可,安装过程时间很长。
3、安装Qt
wireshark是采用Qt+C的开发模式,其界面的设计是通过Qt的库完成的。Qt同样有付费版与免费版,免费版已足够开发使用,选择的是Qt Open Source版本,即免费版,安装过程很顺利,假设安装目录为:C:\Qt.
4、安装Cygwin
选择对应版本的Cygwin(x86 or 64)安装即可,部分组件是开发需要的,但默认是不安装的,需要手动添加,如下所示:
Devel/bison
Devel/flex
Devel/git
Interpreters/perl
Utils/patch? (may be Devel/patch instead)
Web/wget (not needed if using CMake)
Text/docbook-xml45
Interpreters/m4
Python下载地址:http://python.org/download/,安装过程很简单,按照提示,安装在默认目录即可,wireshark开发过程中,不涉及Python编程,Python仅用于wireshark的建立和编译等环节,没有出现在主要功能的开发中。
6、安装CMake
按照提示安装即可。
7、准备wireshark源码
下载wireshark源码:https://www.wireshark.org/#download,假设放在C:\Development\wireshark中。
8、设置环境变量
在cmd窗口中设置的环境变量,只能在当时的cmd窗口中临时有效,以下环境变量的设置,建议在“计算机”属性、环境变量中手动设置。
wireshark的编译过程,需要用到很多的外部链接库,这些库没有随源码一起打包,会在编译过程中下载到指定目录,环境变量WIRESHARK_LIB_DIR指明了这些库存放的目录,注意该变量的设置务必按照如下形式,具体原因在https://blog.csdn.net/dreamnow1201/article/details/80087174中有说明。
WIRESHARK_LIB_DIR=c:\wireshark-win64-libs-2.4
设置Qt的环境变量,以便编译过程中,可以找到Qt相关库的位置,变量值的设置与Qt的安装位置有关。
QT5_BASE_DIR=C:\Qt\5.9.1\msvc2015_64
设置wireshark的版本信息,以下变量值可随意设置,以标识自己编译得到的wireshark。
WIRESHARK_VERSION_EXTRA=v1.0.0.1
9、创建工程目录
新建一个文件夹C:\Development\wsbuild64,以存放生成的vs2015工程。
10、生成工程文件(build files)
下载得到的wireshark源码,并不是一个visual studio的solution工程,本步骤使用CMake工具将wireshark源码转换成一个vs解决方案的样子,以便在后续开发中可以直接用vs2015进行更改。
打开开始菜单中Visual Studio 2015目录中VS2015 x64 Native Tools Command Prompt,切换到第9步创建的工程目录中,针对64位的
操作系统,使用以下命令生成工程文件。
> cmake -DENABLE_CHM_GUIDES=on -G "Visual Studio 14 2015 Win64" ..\wireshark
生成过程会有一段时间,当出现以下信息时,表明生成成功了。
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Development/wsbuild64
11、生成wireshark可执行程序
打开开始菜单中Visual Studio 2015目录中VS2015 x64 Native Tools Command Prompt,切换到第9步创建的工程目录中,运行以下命令。
> msbuild /m /p:Configuration=RelWithDebInfo Wireshark.sln
编译过程会持续很久,编译结束后,便可找到C:\Development\wsbuild32\run\RelWithDebInfo\Wireshark.exe,运行该程序,在程序窗口help=》about中,可以看到第8步中环境变量WIRESHARK_VERSION_EXTRA的值,这便是自己编译得到的wireshark程序。
12、安装WinPcap
刚才编译得到的wireshark程序,还不能启动抓包;wireshark调用WinPcap中的相应库完成网络接口的识别和抓包,但是在上述环节中,WinPcap并不会自行安装,但WinPcap安装程序已在第10步时自动下载下来了,存放在当时设定的库目录中,双击安装即可,此时再运行C:\Development\wsbuild32\run\RelWithDebInfo\Wireshark.exe,便可识别出本地的网络接口,实现抓包。
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
- 【wireshark】开发环境搭建
1. 引言 本文相关内容可参考Wireshark开发指南第2章”Quick Setup” 要对wireshark代码进行修改,除了下文介绍的lua插件的方式以外,都需要对wirehshark源码进行编 ...
- Nordic nRF51/nRF52开发环境搭建
本文将详述Nordic nRF51系列(包括nRF51822/nRF51802/nRF51422等)和nRF52系列(包括nRF52832/nRF52810/nRF52840)开发环境搭建. 1. 强 ...
- ubuntu-10.10嵌入式开发环境搭建【转】
本文转载自:http://blog.csdn.net/zjhsucceed_329/article/details/8036781 版权声明:本文为博主原创文章,未经博主允许不得转载. ubuntu- ...
- SDN开发环境搭建以及Mininet编程
一.实验内容 搭建如下网络拓扑,并熟悉相关指令. 二.搭建开发环境 2.1 开发环境搭建 2.1.1下载ubuntu镜像文件 镜像下载地址 https://www.ubuntu.com/downl ...
- python开发环境搭建
虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...
- IntelliJ IDEA安装及jsp开发环境搭建
一.前言 现在.net国内市场不怎么好,公司整个.net组技术转型,就个人来说还是更喜欢.net,毕竟不是什么公司都像微软一样财大气粗开发出VS这样的宇宙级IDE供开发者使用,双击sln即可打开项目, ...
- Qt for Android开发环境搭建及测试过程记录
最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...
- node.js之开发环境搭建
一.安装linux系统 (已安装linux可跳此步骤) 虚拟机推荐选择:VirtualBox 或者 Vmware (专业版永久激活码:5A02H-AU243-TZJ49-GTC7K-3C61N) 我这 ...
- TODO:小程序开发环境搭建
TODO:小程序开发环境搭建 1.第一步当然是要先注册小程序了 2.登录到小程序 a)完善小程序信息,如名称,图标,描述 3.绑定开发者 4.获取AppID,并设置服务器信息 5.下载并安装开发者工具 ...
随机推荐
- [hdu2255]奔小康赚大钱(二分图最优匹配、KM算法)
题目大意:求二分图的最优匹配(首先数目最大, 其次权值最大). 解题关键:KM算法 复杂度:$O(n^3)$ #include<cstdio> #include<cstring> ...
- c#日期与字符串间的转换(转)
1.日期转字符串(转载) 在编程中经常要用到将日期变量转换为字符串的情况,而且不同的时候希望转换成不同格式的字符串 下面是一些常用的转换及转换结果: (查看格式说明) 以日期为例: 2009-09-0 ...
- IFC文档结构说明
工业基础类为代表的建筑信息BIM数据交换和共享在一个建筑或设施管理项目各参与者之间的开放规范的建模.IFC是国际openbim标准.本文件包含的IFC标准的规范.该规范包括的数据架构,表示为一个表达模 ...
- 旋转矩阵(Rotate Matrix)的性质分析
博客转载自:http://www.cnblogs.com/caster99/p/4703033.html 学过矩阵理论或者线性代数的肯定知道正交矩阵(orthogonal matrix)是一个非常好的 ...
- RTX这种东西究竟有什么价值?
我在第一家公司工作的时候,同事沟通用的就是RTX,第一感觉就是这么简单的软件也能卖钱? 这种东西有啥价值啊?不就是个没广告蓝色UI的qq吗? 还是那句话,当你已经习惯了一个东西之后,你不会感觉到他的价 ...
- Python沙盒环境配置
一.简介 本文介绍配置python沙盒环境的方法步骤. 二.安装步骤 1.安装pyenv http://www.cnblogs.com/274914765qq/p/4948530.html 2.安装v ...
- ZROI2018提高day5t3
传送门 分析我们可以根据性质将这个序列构造成一个环:0,a[1~n],0,a[n~1] 这中间的0是为了起间隔作用的. 我们又知道b[i]=a[i-1]^a[i+1] c[i]=b[i-1]^b[i+ ...
- notpad++ 开发php神奇
开发PHP应具有的插件: 1. Compare: 可以用来比较两个文件不同之处. 2. Explorer:文件浏览器插件,包含收藏夹.Session保存功能.可与NppExec脚本结合使用. 3. ...
- Gazebo学习随记2 SDF和XML
Model 模型 一个模型数据库会拥有的文件 database.config:有关数据库的元数据,从CMakeList自动填充『本地不需要』 model文件夹 一个模型[奏是辣个文件夹]会有的文件 m ...
- 利用excel制作二维码
1 将想要通过扫描二维码访问的目标网址放入A1单位格 2 在excel 编辑区右击选择“自定义功能区” 3 然后将“开发者工具”选上 4 点击菜单栏的“开发者工具---插入--->其他控件” 5 ...