最近随意浏览了一下俺们大省会城市的招聘信息,发现C++招聘中涉及Qt经验的要求有不少,为了牛奶和面包,决心深入一下Qt开发。本篇文章由此而出。
Qt
关于Qt的人生经历在这不在累赘,资料随处可得,这里只记录干货。
环境搭建
本篇在MSYS2开发环境搭建基础上进行搭建,没有MSYS2开发环境的同学可以移步参考。
pacman -S mingw-w64-x86_64-qt5 mingw-w64-x86_64-qt-creator
安装Qt5与QtCreatorpacman -S /mingw-w64-x86_64-qt5-static
如果需要Qt5的静态库,可以安装此包pacman -S mingw-w64-x86_64-qt6
或者pacman -S mingw-w64-x86_64-qt6-static
目前Qt6.2发布,好奇宝宝可以选择安装Qt的最新版本
在终端输入qtcreator
启动QtCreator开启Qt之旅。
前途是光明的,道路是曲折的
-
【QtCreator创建项目后,在代码中始终无法跳转,无法查看帮助文档】
尝试一下几个方法,都不奏效
- 删除
%appdata%
目录下的QtProject
文件夹 - 删除重新安装QtCreator
只能发挥俺的英文余热来查看英文资料,不知道哪个页面提到先安装
pacman -S mingw-w64-x86_64-clang
在安装QtCreator,抱着试试的态度,安装了这个包。不试不知道一试果然有效。回头总结,发现有些包有可选依赖,pacman命令并不安装这些可选依赖,于是乎俺把可选依赖都装上了。$ pacman -Q -i mingw-w64-x86_64-qt-creator Name : mingw-w64-x86_64-qt-creator Version : 7.0.0-2 Description : Cross-platform IDE (mingw-w64) Architecture : any URL : https://www.qt.io/ Licenses : GPL3 Groups : None Provides : None Depends On : mingw-w64-x86_64-qt6-declarative mingw-w64-x86_64-qt6-tools mingw-w64-x86_64-qt6-svg mingw-w64-x86_64-qt6-quick3d mingw-w64-x86_64-qt6-serialport mingw-w64-x86_64-qt6-translations mingw-w64-x86_64-qt6-5compatmingw-w64-x86_64-make mingw-w64-x86_64-yaml-cpp Optional Deps : mingw-w64-x86_64-gdb: for the debugger [installed]mingw-w64-x86_64-cmake: CMake project support [installed]mingw-w64-x86_64-ninja: Ninja Generator [installed]mingw-w64-x86_64-qbs: QBS project supportmingw-w64-x86_64-clang: Clang code model [installed]mingw-w64-x86_64-qt6-doc: integrated Qt6 documentation [installed]mingw-w64-x86_64-qt6-quicktimeline [installed] Required By : None Optional For : None Conflicts With : None Replaces : None Installed Size : 335.84 MiB Packager : CI (msys2/msys2-autobuild/892e1a32/2150445403) Build Date : Tue Apr 12 04:48:28 2022 Install Date : Thu Jun 30 17:08:36 2022 Install Reason : Explicitly installed Install Script : Yes Validated By : Signature
- 删除
Qt应用程序打包发布
参考
- QT打包完整教程 超详细
- Inno Setup打包教程
总结步骤主要如下
- 构建Release版的可执行程序
- 使用Qt自带的
windeployqt
命令将可执行程序的依赖拷贝到安装目录下 - 使用第三方工具将可执行程序以及依赖打包成可安装的可执行程序,类似工具比较多,可根据喜好进行选择学习
- https://jrsoftware.org/isdl.php
- https://enigmaprotector.com/en/downloads.html
- https://nsis.sourceforge.io/Download