QT学习笔记(二):QT MinGW 和 MSVC 编译方式

Qt 中有两种方式编译:一种是MinGW ,另一种MSVC,是使用两种不同的编译器。

1、MSVC是指微软的VC编译器;

2、MingGW是指是Minimalist GNU on Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你 在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方运行时库。

3、Qt Creator 版本问题:MSVC和MinGW版本的区别。msvc版本使用的是VS的编译器,这个版本主要用于PC开发;MinGW版本使用MinGW编译器,主要用于跨平台开发。两个版本的Qt配置方式完全不同。因此在网上搜配置方法时候,要加上MSVC或者MinGW这样的关键字一块搜索。网上大部分内容是关于MinGW版本的配置方法,我本地使用的是MSVC版本。MSVC版本配置比较简单;MinGW版本需要下载cmake自行编译opencv。

4、两者是很好用的编译工具,但是他们兼容的并不好。当你的项目使用MinGW编译的使用,想要用一个MSVC编译生成的库时就会有问题。使用MinGW编译项目的时候,所使用的Lib也要是MinGW编译的。如果你只是开发Window平台的软件时,最好用Qt MSVC组合,这样可以使用大量的第三方lib,还有很多的构建指令,毕竟window上MSVC才是王道。

5、编码的问题,QT5的Qstring默认是UTF8格式,QT5极力推介把源码用UTF8格式存储。 但是MSVC只支持带BOM的UTF8格式,qmake不支持带BOM的UTF8格式,逼我只能用GBK么。这样的话,用qt5,每次都要Qstring::fromLocal8bit(“我是中国人”);况且就算BOM问题解决了,源代码是UTF8了。MSVC的执行编码也是GBK。这个问题这里有一些探讨。

QT学习笔记(二):QT MinGW 和 MSVC 编译方式相关推荐

  1. Qt学习笔记,Qt国际化

    Qt学习笔记,Qt国际化 Qt国际化步骤: 第一步:设置.pro文件,加入TRANSLATIONS为国际化做准备 TRANSLATIONS = language/language_en.ts\     ...

  2. Qt学习笔记,Qt程序架构设计要旨

    Qt学习笔记,Qt程序架构设计要旨 时间过得很快,转眼学习Qt已经有一个多月了,对Qt的学习也在不断的深入中.自己手下的code也很多了,不过不得不说,还有很多的部分没有接触过,比如网络编程,2D,3 ...

  3. Qt学习笔记(二十七):QLabel 的常用方法

    一.QLabel 的构造函数: 1.QLabel(QWidget * parent = 0, Qt::WindowFlags f = 0):创建 QLabel 控件时,指定其父对象,并设置其窗口属性( ...

  4. Qt学习笔记(Qt制作菜单栏and工具栏and状态栏)^_^

    本人是菜鸟,这里记录的每天的学习内容 学习Qt 的第四天(笑着学) 学习内容: 1)编写一个菜单栏 and 工具栏 and 状态栏                                    ...

  5. Qt学习笔记之Qt软件的打包发布

    在QT编程结束之后,我们会运行程序,这个过程结束后会在你工程的父目录中出现一个build-simpleEditor-unknown-Debug的文件夹,其中build之后的名称就是你工程的名称.在这个 ...

  6. Qt学习笔记之--Qt内置图标一览表

    Qt内置了一批图标,一共有70个(Qt 5.9.5),不同的平台图标有差异.由于官方文档中只有描述没有图示,所以写个Demo把这些图标全部显示出来.下面展示了windows.Linux.android ...

  7. QT学习笔记(1): Qt的线程安全和可重用性

    原来觉得对线程安全是比较了解的,可是今天看了Nokia Developer中的Reentrancy and Thread-safty之后,发现还有有些概念没有很清楚.所以在此留点痕迹好了. 首先两个英 ...

  8. QT学习笔记(摘抄)

    QT学习笔记-1.QT主要的对象 说来惭愧学习c++很长时间了一直没有使用c++开发过软件界面 所以现在想认认真真的学习一个c++图形界面框架库 本来想学习Xwidget但是这个资料不大好找 有啥问题 ...

  9. QT学习笔记(四):Qt5+MSVC编译 中文字符显示乱码问题解决

    QT学习笔记(四):Qt5+MSVC编译 中文字符显示乱码问题解决 问题: 1.解决方法一: 2.解决方法二: 3.解决方法三: 4.解决方法四: 结果显示: Qt5+MSVC编译 中文字符显示乱码. ...

最新文章

  1. JAVA入门级教学之(内存地址的引用示例)
  2. linux之间安全传输文件,使用SCP安全地传输文件[Linux] | MOS86
  3. 解决“DNS_PROBE_FINISHED_NXDOMAIN”问题
  4. oppoR17手机计算机的隐藏功能,OPPO R17 Pro隐藏了很多你不知道的黑科技,让你高效使用手机...
  5. 计算机网络7种类型,OSPF中7种类型LSA
  6. python练手经典100例-10 个最值得 Python 新人练手的有趣项目
  7. 3.2 决策树可视化
  8. Rational RequisitePro
  9. 【转】WinCC 6.0 声音报警
  10. 将Ubuntu的引导写入自己所在分区——变色龙引导Linux,Windows,Mac OS(苹果系统)攻略之一
  11. 2022自动驾驶竞赛WAD介绍 CVPR 2022 Workshop on Autonomous Driving
  12. 涉及到各种场景-英语小记-最爱的一篇
  13. ROC曲线、AUC、Gini系数和KS值
  14. php师汤姆猫壁,汤姆猫家族与vivo游戏中心线上线下破壁联动
  15. 个人对东西方人开放的拙见。
  16. Idea 中出现:运行 Test 时出错。命令行过长。 通过 JAR 清单或通过类路径文件缩短命令行,然后重新运行。
  17. 用Java求出所有水花仙花数
  18. 数据表的字段约束:主键、外键、唯一
  19. c语言找出100内孪生质数,100以内所有孪生质数
  20. java+swagger+侵入,一种无侵入比swagger-ui兼容性更好更简单的API文档生成方案

热门文章

  1. 这个自然语言处理“工具”,玩得停不下来
  2. Spring Boot多数据源配置与使用
  3. MyFlash——美团点评的开源MySQL闪回工具
  4. DataMan-美团旅行数据质量监管平台实践
  5. 论文浅尝 | AAAI2020 - 基于规则的知识图谱组合表征学习
  6. 以DES的方式实现对称加密,并提供密钥
  7. SSM:Spring整合MyBatis框架时出现 java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManaged
  8. 一个走过太多坑的老弟对面向对象知识的总结:世上无难事,有的真不行
  9. 《深入浅出vue.js》阅读笔记之数组变化侦测
  10. 关于h5中背景音乐的自动播放