windows下Qt 5的安装与编译打包

环境与版本

操作系统:windows 10

Qt版本:5.14.2,最后一个有独立安装包的版本,下载地址:archive/qt/5.14/5.14.2

IDE:自带的qt-creator 4.11.1,也可以自行下载其他版本4.14.2,下载地址:archive/qtcreator/4.14/4.14.2

编译环境:MinGW,电脑要先配置MingGW环境,否则无法编译代码,具体安装这边不做赘述,网上下载一个安装并把路径加到环境变量path里就行:MinGW-w64 - for 32 and 64 bit Windows - Browse /mingw-w64/mingw-w64-release at SourceForge.net

1.安装Qt

先断网,避免触发注册账号的选项,不嫌麻烦可以不断网,注册一个账户也没什么影响。

1.1 直接双击安装包,下一步根据自己需求选择安装路径,不能带中文或特殊符号或空格等,然后下一步选择安装选项。

1.2 在Qt中,根据自己用MSVC还是MinGW编译环境,勾选相应的组件,也可以同时勾选,占用一些空间而已。

1.3 其他一般就按默认的来就行,然后下一步就是等待安装完成。
在这里插入图片描述

2.第一个Qt程序

如果不想用IDE,要编译hello_qt.cpp,可以通过在代码目录下使用命令“qmake -project”生成工程文件 -> "qmake hello_qt.pro"生成编译文件 -> "make"编译,来编译代码,但是相比来说没有IDE方便,下面介绍qt-creator使用方法。

2.1 工程建立

(1)新建项目
在这里插入图片描述

(2)选择工程目录
在这里插入图片描述

(3)选择编译系统,默认用qmake即可
在这里插入图片描述

(4)定义类信息,采用默认即可
在这里插入图片描述

(5)语言选择,默认即可
在这里插入图片描述

(6)选择编译工具,我们用的是MinGW,所以选择该选项,自行决定要用32还是64位的
在这里插入图片描述

(7)完成配置
在这里插入图片描述

2.2 编译第一个Qt代码

工程配置完之后,就会自动生成一个基本的代码:

在这里插入图片描述

可以通过左下角的绿色三角形图标进行编译和调试
在这里插入图片描述

运行结果:
在这里插入图片描述

至此,可以进行其他的Qt功能开发了。

3.可视化调节界面

上面的两步会生成界面显示文件mainwindow.ui,可以通过修改该代码来调节界面,其实也可以通过Qt自带的Qt designer,来直观地调节界面。

在IDE里直接双击mainwindow.ui,就可以打开编辑,可以调整大小,增删图表等等,然后再通过CPP代码处理逻辑。

比如我这边缩小了尺寸,增加了个按钮:
在这里插入图片描述

再编译运行后即可获得对应结果:
在这里插入图片描述

4.打包发布

还有其他的打包工具,比如:Enigma Virtual Box和Inno Setup,这边只介绍Qt自带的windeployqt

4.1 首先切换Release构建:
在这里插入图片描述

4.2 把可执行程序复制出来,放到比如\qt\hello_qt\publish\目录下,自己新建即可,然后选择自带打包工具
在这里插入图片描述

切换到刚才的publish目录下。

4.3 打包,执行命令即可完成打包

windeployqt hello_qt.exe

可以把publish打包发给其他人使用了,但是打包的文件是真的大,可以删掉一些不必要的库

E:.
│  D3Dcompiler_47.dll
│  hello_qt.exe
│  libEGL.dll				# libEGL.dll, 是 ANGLE 的文件,可以去掉
│  libgcc_s_dw2-1.dll
│  libGLESv2.dll			# libGLESV2.dll,是 ANGLE 的文件,可以去掉
│  libstdc++-6.dll
│  libwinpthread-1.dll
│  opengl32sw.dll			# opengl32sw.dll,是软件模拟 OpenGL, QtWidgets/C++ 程序都不用 OpenGL,所以直接去掉即可。
│  Qt5Core.dll
│  Qt5Gui.dll
│  Qt5Svg.dll				# Qt5Svg.dll,如果没有使用 svg 的话,可以删掉
│  Qt5Widgets.dll			# Qt5Widgets.dll,QML 程序没有使用 QtWidgets/C++ 可以删掉,C++程序不可以删除(测试删了也能用)
│
├─iconengines
│      qsvgicon.dll			# iconengines\qsvgicon.dll, 如果没有使用 svg 的话,可以删掉
│
├─imageformats # 图片格式库,如果有引用非PNG的图片才需要用到,否则都可以删了
│      qgif.dll
│      qicns.dll
│      qico.dll
│      qjpeg.dll
│      qsvg.dll
│      qtga.dll
│      qtiff.dll
│      qwbmp.dll
│      qwebp.dll
│
├─platforms
│      qwindows.dll
│
├─styles
│      qwindowsvistastyle.dll
│
└─translations # 国际化翻译文件,如果只是国内用,可以删掉整个目录。
        qt_ar.qm
        qt_bg.qm
        qt_ca.qm
        qt_cs.qm
        qt_da.qm
        qt_de.qm
        qt_en.qm
        qt_es.qm
        qt_fi.qm
        qt_fr.qm
        qt_gd.qm
        qt_he.qm
        qt_hu.qm
        qt_it.qm
        qt_ja.qm
        qt_ko.qm
        qt_lv.qm
        qt_pl.qm
        qt_ru.qm
        qt_sk.qm
        qt_uk.qm
        qt_zh_TW.qm
# 可在调用 windeployqt.exe 时加”–no-angle” 和 “–no-opengl-sw” 这两个参数去掉angle和opengl。
windeployqt –no-angle –no-opengl-sw hello_qt.exe 

上面的编译都是动态编译,需要使用动态库,如果要用静态库,那还得用静态方式static选项编译qt源码才行。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值