在本教程中,您将学会如何将您的 Qt 应用程序打包成一个独立的 Windows 可执行文件(.exe),便于在没有 Qt 开发环境的计算机上运行。请注意,本教程默认您已经拥有 Qt 开发环境,并能够成功编译执行一个简单的 Qt 应用程序。
在将 Qt 应用程序打包为可执行文件时,通常会遇到两个问题:
1. 确保程序能找到所需的 Qt 动态链接库(.dll)文件。
2. 确保程序能找到所需的插件(例如,数据库驱动程序)。
为了解决这些问题,我们将使用以下方法:
1. 使用 Qt 提供的工具将动态链接库和插件文件复制到适当的位置。
2. 使用工具创建一个可执行文件的压缩包,可以直接在目标计算机上运行。
## 第1步:为 Qt 应用程序收集所需的动态链接库和插件文件
1. 打开 Qt 命令提示符(可以从开始菜单或 Qt 目录中找到)。
2. 导航到您的 Qt 应用程序能生成或已生成可执行文件的目录。例如:
```
cd C:\Users\Username\Documents\MyQtApp\release
```
3. 运行以下命令(用实际的可执行文件名替换
```
windeployqt.exe
```
例如:
```
windeployqt.exe MyQtApp.exe
```
此命令会将所需的 Qt 动态链接库和插件文件复制到应用程序的可执行文件目录。请确保保持该命令提示符窗口处于打开状态,因为我们稍后还需要使用它。
## 第2步:创建独立的可执行文件
1. 下载一个可将多个文件打包成一个独立可执行文件的工具,如 Enigma Virtual Box(https://enigmaprotector.com/en/aboutvb.html)。
2. 安装并运行 Enigma Virtual Box。
3. 在 "Input" 栏中,点击 "Add"(添加),然后选择您的 Qt 应用程序的可执行文件(例如,MyQtApp.exe)。
4. 依次选择您在第1步中复制到可执行文件目录的所有动态链接库(.dll)文件和文件夹(例如,platforms、sqldrivers等),并将它们添加到 "Input" 栏中。
5. 在 "Output" 和 "Output File" 栏中,选择保存独立可执行文件的位置并输入文件名,然后点击 "Process"(处理)。
现在,您已经成功创建了一个包含所有所需文件的独立 .exe 文件。将该文件复制到没有 Qt 开发环境的计算机上,并尝试运行它。如果一切正常,您应该能够正常运行您的 Qt 应用程序。