目录
1 概述
本系列文章主要记录QT学习之路。
1.1 整体安装与部署思路:
1)安装Visual studio 2015;
2)安装Qt5.12.10;
3) 安装VS的QT插件;
4)编译器配置;
5)QT项目创建与简单调试。
1.2 安装问题总汇
1)VS2015安装包不完整(需要将ISO镜像文件提取到指定文件夹下);
2)QT不注册账号无法安装(断网安装即可);
3)VS2015中QT项目编译不通过(配置编译器);
4)新建QT项目无法编译调试(将rc.exe与rc.dll复制与拷贝到指定路径)。
1.3 安装包准备
安装包主要包括四部分 :VS 2015安装镜像包、qt的windows开发环境包、VS中qt开发插件、以及 qt编译sdk工具包。
2 VS2015安装
VS2015安装按照一般流程安装,即可,详细可参见《vs2015安装_VS2015安装教程_吴人奔越的博客-优快云博客》。
特殊说明,由于个人需要在VS2019上编译器进行C# .net Core项目开发,因此需要安装多个版本Visual Studio软件,安装VS2015版本,个人选择安装C++。
3 QT 5.12.10安装与插件安装
QT安装时,断网安装,则无需进行账号注册,QT安装包可在官网获取 QT官网。安装完QT软件后,需要安装VS的QT插件 ,可从微软官方下载qt-vsaddin-msvc2015-2.7.2.vsix,默认完成安装。
4 VS2015中QT环境配置
打开VS 2015后,在菜单栏中,找到Qt VS Tools,选择Version配置,配置QT编译器版本。目前配置为2015版本。
5 QT项目创建与编译
完成上面配置后,通过QT项目创建与调试确认环境是否配置成功。
5.1 在VS2015中创建QT项目
新建QT项目-》Qt Widgets Application。
确认QT编译器版本与QtModule类型。
Qt项目-》选择QWidget类型。
QT项目创建完成。如果VS编译器无任何报错,且编译正常,恭喜你,属于幸运儿。
如果,不幸,遇到各类问题,不要沮丧,下面对项目创建后及编译与调试中可能出现的问题进行说明。
5.1.1 QT项目中头文件不识别问题
主函数不识别QT类头文件。且报异常[C:\Windows\System32\kernel.dll”,无法查找或打开 PDB 文件,未加载XXX.pdb 以及 找不到文件源]。
原因定位:
1)无法查找PDB文件,报错原因是由于加载不到 符号文件 所导致的。
2)无法找到QT类头文件,是因为项目文件路径配置问题。
解决方案:
1)添加QT文件符号;
2)修改项目文件路径。
首先,选择菜单“调试”-》“选项”。
在调试的符号文件中,添加编译器三个路径位置:
D:\Qt\Qt5.12.10\5.12.10\msvc2015_64\bin
D:\Qt\Qt5.12.10\5.12.10\msvc2015_64\lib
D:\Qt\Qt5.12.10\5.12.10\msvc2015_64\plugins
解决符号文件问题。
下面解决项目中QT头文件不识别问题,具体思路为,先提供一个指定路径后,再配置路径。
将目标平台版本改为8.1,并将输出目录改为..\bin后,重新查看项目,编译项目。
再将项目输出路径改为原始配置:$(SolutionDir)$(Platform)\$(Configuration)\
问题解决。
5.1.2 程序编译时报错rc.exe 无法生成exe程序
NMAKE error: U1077: “rc”: 返回代码“0x52f”等等,该原因主要原因是由于安装了两个版本VS软件,导致编译时,无法找到系统rc.exe和rcdll.dll两个文件。解决思路为从系统文件赵到上述两个文件,并将其拷贝至VS 2015编译器与QT编译器中,具体说明如下:
在文件所在目录为:C:\Program Files (x86)\Windows Kits\8.1\bin\x86查找rc.exe程序与rc.dll程序,后分别复制到
复制文件到D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
复制文件到D:\QT\qT\5.12.6\msvc2015_64\bin
重新编译后,nmake问题解决。
详细参见《NMAKE:-1: error: U1077: “rc”: 返回代码“0x1”_u1077 rc 返回代码 0x01_兔子Endeavor的博客-优快云博客》。
5.1.2 QT编辑器新建项目及调试
从QT编辑器新建项目同样可能遇到上述问题,具体依据5.1.2节进行操作即可。
6 总结
有时候QT安装很顺利,节约很多时间去做别的事情。但是如果QT安装过程不顺利,如出现上述诸多问题,需要耐心去解决问题,把每一次问题都当成是学习的机会。
在上述安装过程,第一次出现问题后,我卸载了后重新安装,仍出现上述问题。于是不得不重新思考到底问题出现在什么位置。所以如果遇到问题,不要逃避,直接寻找解决方案也许才是最快途径。