Wireshark编译手册(Windows)

以下是对 Wireshark 官方文档中"Windows 平台的设置和构建说明"部分的翻译和总结:

2.2. Windows 平台

本节提供了在 Windows 上进行 Wireshark 开发的快速设置指南,包含推荐的配置。

2.2.1. 使用 Microsoft Visual Studio

注意:除非您非常了解自己在做什么,否则应严格遵循以下建议。这些配置已被验证可行。如果构建过程中出现问题,请仔细重新阅读本指南。

常见问题包括:

  • 未使用正确版本的 Visual Studio 命令提示符(x64 或 arm64)。
  • 使用了不受支持的 Windows 版本。请在 Microsoft 官方支持页面 确认您的 Windows 版本受支持并已更新。
2.2.1.1. 推荐:安装 Chocolatey

Chocolatey 是 Windows 的本地包管理器。以下大部分软件都可以通过它安装。您可以使用 choco install 命令安装所需软件,例如:

bash 复制代码
# 安装 Flex
choco install -y winflexbison3

# 安装 Git、CMake、Python 等
choco install -y git cmake python3
2.2.1.2. 安装 Microsoft Visual Studio

下载并安装 Microsoft Visual Studio 2022 Community Edition。如果您愿意,也可以选择 Microsoft Visual Studio 2019 Community Edition。以下示例基于 Visual Studio 2022,但也可适用于 Visual Studio 2019。

在安装过程中,选择"使用 C++ 的桌面开发"工作负载,并确保以下组件被选中:

  • MSVC 最新版本的构建工具
  • Windows 11 SDK
  • 适用于 Windows 的 C++ CMake 工具
  • MSVC 的 Spectre 缓解库(可选)

您也可以使用 Chocolatey 安装 Visual Studio 及其工作负载:

bash 复制代码
choco install -y visualstudio2022community visualstudio2022-workload-nativedesktop

虽然可以使用其他版本的 Microsoft C 编译器,但官方的 Wireshark Windows 开发版本是使用 Visual Studio 2022 构建的,因此推荐使用该版本。

注意:您可能需要以管理员身份执行上述操作。

虽然可能使用 clang-cl 构建 Wireshark,但尚未经过测试。使用纯粹的 gcc 或 Clang 编译器在 Windows 上构建 Wireshark 并不推荐,且可能无法成功(除非进行大量高级调整)。

推荐理由:虽然下载量较大,但 Visual Studio Community Edition 是免费的,并包含集成调试器。此外,官方的 Wireshark Windows 版本也是使用 Visual Studio 2022 构建的,因此在开发过程中可能遇到的问题会更少。

2.2.1.3. 安装 Qt

Wireshark 主应用程序使用 Qt 窗口工具包。要安装 Qt,请访问 Qt 官方下载页面,选择"Download open source",然后下载适用于 Windows 的在线安装程序。运行安装程序,注册或登录后,选择"自定义安装"。

在"选择组件"页面,选择您需要的 Qt 版本。我们推荐最新的 LTS 版本,当前稳定的 Windows 安装程序包含 Qt 6.5.3。请确保选中以下组件:

  • MSVC 2019 64-bit
  • Qt 5 兼容模块
  • Qt 调试信息文件(包含可用于调试的 PDB 文件)
  • 在"附加库"下,选择"Qt Multimedia"以支持在 RTP 播放器对话框中播放流的高级控制

其他组件(如"Qt Charts"或"Android xxxx")可取消选择,因为它们不是必需的。

CMake 变量 CMAKE_PREFIX_PATH 应设置为您的 Qt 安装目录,例如 C:\Qt\6.5.3\msvc2019_64。或者,您也可以使用环境变量 WIRESHARK_QT6_PREFIX_PATH

Qt 6 是构建 Wireshark 的默认选项,但 Wireshark 也支持 Qt 5.12 及更高版本。若需使用 Qt 5 构建 Wireshark,请在运行 cmake 时添加参数 -DUSE_qt6=OFF

2.2.1.4. 安装 Win64 开发工具包

Wireshark 的构建需要 64 位版本的开发工具包。

确保在 Visual Studio 安装过程中选择了适用于 64 位的工具集。

如果未选择,可能需要重新运行安装程序进行修改。

2.2.1.5. 安装 Python

Wireshark 的构建过程需要 Python。

建议安装最新的 Python 3 版本。

可以从 Python 官方网站 下载适用于 Windows 的安装程序。

安装时,确保选中"Add Python to PATH"选项,以便在命令行中直接使用 python 命令。

2.2.1.6. 安装 CMake

CMake 是一个跨平台的构建系统,Wireshark 使用它来管理构建过程。

可以从 CMake 官方网站 下载适用于 Windows 的安装程序。

安装完成后,确保在命令行中可以访问 cmake 命令。

2.2.1.7. 安装 Git

Wireshark 的源代码通过 Git 进行版本控制。

可以从 Git 官方网站 下载适用于 Windows 的安装程序。

安装完成后,确保在命令行中可以使用 git 命令。

2.2.1.8. 获取 Wireshark 源代码

打开命令提示符,使用以下命令克隆 Wireshark 的源代码仓库:

bash 复制代码
git clone https://gitlab.com/wireshark/wireshark.git

这将创建一个名为 wireshark 的目录,包含所有源代码。

2.2.1.9. 配置构建环境

在命令提示符中,导航到 Wireshark 源代码目录,然后创建一个构建目录并进入该目录:

bash 复制代码
cd wireshark
mkdir build
cd build

使用 CMake 配置构建环境:

bash 复制代码
cmake -G "Visual Studio 17 2022" -A x64 ..

这将生成适用于 Visual Studio 2022 的 64 位构建文件。

2.2.1.10. 构建 Wireshark

在命令提示符中,运行以下命令开始构建:

bash 复制代码
msbuild /m /p:Configuration=RelWithDebInfo Wireshark.sln

这将以包含调试信息的发布模式构建 Wireshark。

2.2.1.11. 运行 Wireshark

构建完成后,生成的可执行文件位于 run\RelWithDebInfo 目录中。

您可以直接运行 wireshark.exe 来启动应用程序。

相关推荐
emplace_back1 小时前
C# 集合表达式和展开运算符 (..) 详解
开发语言·windows·c#
一禅(OneZen)5 小时前
「Windows/Mac OS」AIGC图片生成视频 ,webui + stable-diffusion环境部署教程
windows·stable diffusion
AirDroid_cn6 小时前
OPPO手机怎样被其他手机远程控制?两台OPPO手机如何相互远程控制?
android·windows·ios·智能手机·iphone·远程工作·远程控制
小龙在山东8 小时前
Python 包管理工具 uv
windows·python·uv
昏睡红猹8 小时前
我在厂里搞wine的日子
windows·wine
love530love11 小时前
Docker 稳定运行与存储优化全攻略(含可视化指南)
运维·人工智能·windows·docker·容器
1024小神16 小时前
tauri项目在windows上的c盘没有权限写入文件
c语言·开发语言·windows
程序视点1 天前
Window 10文件拷贝总是卡很久?快来试试这款小工具,榨干硬盘速度!
windows
wuk9981 天前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github
lzb_kkk1 天前
【C++】C++四种类型转换操作符详解
开发语言·c++·windows·1024程序员节