首页 > 其他分享 >Qt编译器——MinGW和MSVC的区别

Qt编译器——MinGW和MSVC的区别

时间:2023-08-17 11:11:40浏览次数:44  
标签:Qt VS 编译器 MinGW MSVC 调试

# 1、MSVC:

即Microsoft Visual C++ Compiler,即微软自己的编译器

# 2、MinGW:

我们都知道GNU在Linux下面鼎鼎大名的gcc/g++,MinGW则是指Minimalist GNU for Windows的缩写

Qt 用 MSVC 和 MinGW 哪个编译器编译程序比较好?

我的建议是使用MSVC。

理由一:qtcreator的debuger有功能缺陷,经常会出现变量无法查看的问题,棘手的bug还是需要在VS环境下进行调试。很多人的开发模式就是qtcreator写代码,VS下面做调试。

理由二:MinGW无法直接生成PDB文件,这导致如果软件闪退,无法利用生成的dump文件在windbg或VS下面定位到出错的代码。(有各种奇技淫巧可以在windows下面对mingw版本进行dump调试,但有这功夫直接安装个VS 2017显然更香)。

理由三:我的经验告诉我,MinGW编译出的软件总会有奇怪的无法运行现象。

标签:Qt,VS,编译器,MinGW,MSVC,调试
From: https://www.cnblogs.com/charlielee/p/17637106.html

相关文章

  • 形象谈JVM-第三章-即时编译器优化技术
    即时编译器优化技术一览:相信许多同学看完这个表格,脑子里面嗡嗡的,这些名字也是晦涩难懂,要实现这些优化的技术确实有比较大的难度,但是咱们只是学习,去理解这些技术,其实并不难,下面咱们直接开讲。首先需要明确一点的,作者是为了讲解方便,使用java的语法来表示优化技术所发挥出来的作......
  • FFmpeg3.2 msvc+msys 源码编译
    材料FFmpeg3.2源码x264x265fdk-aac注意:由于FFmpeg源码的版本太久,采用的第三方库是最新的,因此需要做调整基本操作编译64位FFmpeg程序Windows开始菜单->VisualStudio2022->x64NativeToolsCommandPromptforVS2019编译32位FFmpeg程序Windows开始菜单->VisualStudio2......
  • 形象谈JVM-第二章-认识编译器
    我在上一章《形象谈JVM-第一章-认识JVM》提到的“翻译”,其实就是我们今天所说的“编译”的概念。上一章原文链接:https://www.cnblogs.com/xingxiangtan/p/17617654.html原文:【虚拟机的职责是将字节码翻译成对应系统能够识别并执行的机器码,比如在linux系统,java文件被javac编译......
  • 安装MinGW时报错“The file has been downloaded incorrectly!”解决方案
    前言作为一个准备学习C语言的准大一的通信工程崽子,Linux还不会用,在Windows上使用gcc得安装MinGW。我知道各位大佬们看到第一句话之后想说些什么。虽然说有很多优秀的编程软件自带了MinGW,但是想想,如果使用Windows的cmd直接敲个“gcc-v”来跑代码,逼格不直接蹭蹭上涨,能够充分满足......
  • #region在多种编程语言及IDE中进行代码折叠,包括python msvc++ c#等
    vs/rider中折叠C#代码在写C#的时候,在visualstudio中可以使用#region和#endregion来进行代码折叠,那么在pycharm中是否可以呢?//这里有很多的代码......#region//这里的数百行的伪代码,可以直接折叠起来,方便阅读及归类[MenuItem("KEngine/KSFrameworkOptionsandHelp")]priva......
  • 编译器的工作一般分为哪几个阶段?
    gcc编译器对源文件文件的编译分为四个阶段:预处理、编译、汇编、链接。预处理(-e):在这个阶段主要做了三件事:展开头文件、宏替换、去掉注释行,这个阶段需要gcc调用预处理器来完成,最重得到的还是源文件,文本格式。编译(-s):这个阶段需要gcc编译器调用编译器对文件进行编译,最终得到一个汇......
  • 解决tsc编译器版本过低问题
    我们知道,tsc是TypeScript的编译器,可以将TypeScript脚本(.ts文件)编译为JavaScript脚本(.js文件)。根据约定,TypeScript脚本文件使用.ts后缀名,JavaScript脚本文件使用.js后缀名。tsc的作用就是把.ts脚本转变成.js脚本。1、......
  • msvc++工程之vs版本升级及工程目录规范
    为什么要升级msvc++工程版本对msvc++工程进行vs版本升级,一方面是可以使用较新的C++标准及对64位更好的支持。首先你需要对msvc++project文件有一定的了解,主要是vcxproj和vcxproj.filter这两个文件,升级的时候需要手动修改sln和vcxproj文件。vs(visualstuiod)中vc++工程的Filte......
  • 深度学习编译器前端技术概述
    AI编译器在前端经常会做一些静态分析,方便在前端做一些优化:自动微分等。中间表示(IntermediateRepresentation,IR)IR是编译器用于表示源代码的数据结构或代码,是程序编译过程中介于源语言和目标语言之间的程序表示。几乎所有的编译器都需要某种形式的中间表示,来对被分析、转换......
  • Qt+GDAL开发笔记(二):在windows系统msvc207x64编译GDAL库、搭建开发环境和基础Demo
    前言  上一篇使用mingw32版本的gdal,过程曲折,为更好的更方便搭建环境,在windows上msvc方式对于库比较友好。<br>大地坐标简介概述  大地坐标(Geodeticcoordinate)是大地测量中以参考椭球面为基准面的坐标,地面点P的位置用大地经度L、大地纬度B和大地高H表示。原理  当点在......