QT安装简介

1、下载QT安装包

下载网址:http://download.qt.io/

或者http://download.qt.io/archive/qt/

选择一个你需要的版本,例如 5.10


点击进去后,选择对应操作系统的安装包下载,例如qt-opensource-windows-x86-5.10.0.exe

2、安装QT

安装包下载好后,双击运行,根据提示一步步往下走即可


在选择要安装的组件时,可能需要注意了,可以用两种编译器编译QT程序,一个是Visual Studio,另外一个是MinGW,是Minimalist GNUfor Windows的缩写。

如果选择了Visual Studio作为编译器,就必须安装对应版本的Visual Studio,刚开始我是安装Visual Studio2015,但是发现VS 太大了,十几个G,安装之后C盘所剩无几。虽然安装时选到了其他盘,但是大部分仍然还是被装到了C盘,卸载的时候也很无奈,得从控制面板中一个个卸载。

虽然安装QT时选择了MSVC组件,但是Visual Studio编译器并没有一起安装,因为Visual Studio是微软的软件,QT是不敢把它集成到自己的安装包中,但是如果选择了MinGW,就会在安装上MinGW编译器,因为MinGW是开源的。

3、创建一个工程

安装好后,双击QtCreator运行


选择新建一个工程,可以选择Qt Widgets Application


选择Qt Widgets Application 模版后,编译运行起来就能看到一个简单的界面


点击左下角的三角图标编译和运行你的程序,这时候就会弹出一个窗口,如果是要编译出正式版本的exe,可以编译出release版本


在项目界面中的构建配置中选择成release,默认是debug,release版本编译出来的exe会比debug版本的文件要小。


同样的点击三角形运行图标后,会在对应的目录下生成exe文件,这个exe文件双击之后还是无法运行的,因为缺少一些dll文件,那么我们怎么知道还缺少什么dll文件,可以用QT自带的工具来完成。


运行该该程序


切换到一个空目录下,同时把QT编译出来的exe文件拷贝到这个目录下,然后输入windeployqt  ProgramName.exe


运行完之后,会在该目录下生成需要的文件,这时再双击exe文件,就可以之前运行程序了,同样把该目录下的所有文件拷贝到其他电脑上,也可以直接运行。

如果觉得在命令窗口中输入命令很麻烦,也可以使用如下脚本来帮助生成依赖文件

qt_pack.bat

@echo off

rem set current dir
set cur_dir=%cd%

rem Setting up environment for Qt usage...
set PATH=D:\Qt\Qt5.10.0\5.10.0\mingw53_32\bin;D:/Qt/Qt5.10.0/Tools/mingw530_32\bin;%PATH%

rem set windeployqt tool path
set windeployqt=D:\Qt\Qt5.10.0\5.10.0\mingw53_32\bin\windeployqt.exe

for /f "delims=\" %%a in ('dir /b /a-d /o-d "%cur_dir%\*.exe"') do (
     for /f "delims=.exe tokens=1,*" %%i in ("%%a") do ( 
        
        rem if dir is exist ,remove firstly
        if exist %cur_dir%\%%i (
           rd /s /Q %cur_dir%\%%i
        )
        rem create dir
        md %cur_dir%\%%i
        
        rem move exe file to designated dir
        move %%a %cur_dir%\%%i\%%a
        
        rem execute windeployqt      
        %windeployqt% %cur_dir%\%%i\%%a
     )
)

rem wait for input
pause

将上面的内容拷贝到一个.bat的脚本文件中,放在一个空目录下,把QT编译出来的exe也放在这个目录下,运行脚本即可

上述脚本中set PATH 需要改成QT对应的安装目录,注意后面的路径是/

set PATH=D:\Qt\Qt5.10.0\5.10.0\mingw53_32\bin;D:/Qt/Qt5.10.0/Tools/mingw530_32\bin;%PATH%

脚本中的 windeployqt 也需要改成QT对应的安装目录

set windeployqt=D:\Qt\Qt5.10.0\5.10.0\mingw53_32\bin\windeployqt.exe

编写脚本遇到的问题

for /f "delims=.exe tokens=1,*" %%i in ("%%a")

遍历当前目录下的exe文件,依次调用windeployqt 给对应的exe 生成依赖文件,需要先在当前目录下创建一个文件夹,文件夹的名称就是exe对应的文件名,外面的一个for循环可以得到exe的文件名和后缀,例如Qwind.exe,这个值存在%%a中,我需要把%%a中的.exe去掉,只保留Qwind,所以写了第二个for,用于得到.exe前面的字符串。

一开始写成 in (%%a) ,结果死活运行不正确,后面加了单引号'%%a' 也不正确,最后改成了双引号才没有问题。


评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值