VSCode+Qt+MinGW开发环境搭建

这篇具有很好参考价值的文章主要介绍了VSCode+Qt+MinGW开发环境搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

VSCode+Qt+MinGW开发环境搭建

概述

VSCode扩展性很强,插件机制让其具备不断演进的潜力,适合作为稳定的开发工具。

VSCode+Qt开发环境的搭建需要依赖于以下工具:

  1. VSCode、Qt,其中Qt需要安装MinGW编译工具;
  2. VSCode插件:C++、CMake Tools、Qt Tools、QtConfigure

具体思路上,VSCode只是提供了集成界面,通过它的插件机制来实现对Qt、CMake等工具的调用。

QtConfigure

VSCode中按下F1Ctrl+Shift+P,输入QtConfigure(不区分大小写)会弹出四个菜单:

  • New Project:创建新的Qt项目;
  • Set Qt Dir:指定Qt安装目录,从而识别Qt的套件(Kit),套件是安装Qt时勾选的MinGWMSVC套件;
  • Open Qt Assistant:打开帮助文档;
  • Open Qt Designer:打开Qt设计师编辑界面。

VSCode+Qt+MinGW开发环境搭建

首先要做的是指定Qt安装目录,指定到MaintainanceTool.exe所在目录即可,不用具体到哪个套件,随后将检测出该版本Qt所安装的编译套件,如下图中检测出了4种套件:

VSCode+Qt+MinGW开发环境搭建

随后可以创建Qt工程F1输入QtConfigure后选择New Project,经过如下步骤:

  • 输入项目名称:此处输入HelloWorld
  • 选择套件:刚才检测到的之一,此处选择mingw73_64
  • 选择编译工具:此处选择CMake
  • 选择是否带UI文件:此处选择yes

最后在文件夹下生成的项目文件如下图:

VSCode+Qt+MinGW开发环境搭建

CMake Tool

项目已经生成好了,接下来理论上应该F5就开始调试了,不过一般没那么顺利

梳理一下CMake管理Qt项目的逻辑:

  • CMake依据CMakeLists.txt文件生成makefile
  • QtMinGW套件拿到makefile后编译链接生成最后的可执行文件。

其中关键步骤即是:CMakeQtMinGW套件关联F1输入cmake select a kit,选择该指令后弹出CMake搜索到的编译套件:

VSCode+Qt+MinGW开发环境搭建

上图中的GCC 7.3.0...看着十分眼熟,就是刚才创建项目时选择的Qt套件,选择它即可。

第一次打开不一定有,猜测原因大致是:CMake会从环境变量Path的位置去搜索Kit,但正经人谁装完Qt还去把套件目录添加到环境变量?

CMake Tools插件提供了办法:F1输入cmake edit user-local cmake kits,选择该指令后会弹出一个名为cmake-tools-kits.json的文件,里面的结构是一个对象数组,每个对象描述了一个套件,在其中添加自己安装的Qt MinGW两个套件:

  {
    "name": "GCC 7.3.0 x86-w64-mingw32",
    "compilers": {
      "C": "D:\\APPs\\Qt\\5.14.2\\Tools\\mingw730_32\\bin\\gcc.exe",
      "CXX": "D:\\APPs\\Qt\\5.14.2\\Tools\\mingw730_32\\bin\\g++.exe"
    },
    "preferredGenerator": {
      "name": "MinGW Makefiles"
    },
    "environmentVariables": {
      "CMT_MINGW_PATH": "D:\\APPs\\Qt\\5.14.2\\Tools\\mingw730_32\\bin"
    }
  },
  {
    "name": "GCC 7.3.0 x86_64-w64-mingw32",
    "compilers": {
      "C": "D:\\APPs\\Qt\\5.14.2\\Tools\\mingw730_64\\bin\\gcc.exe",
      "CXX": "D:\\APPs\\Qt\\5.14.2\\Tools\\mingw730_64\\bin\\g++.exe"
    },
    "preferredGenerator": {
      "name": "MinGW Makefiles"
    },
    "environmentVariables": {
      "CMT_MINGW_PATH": "D:\\APPs\\Qt\\5.14.2\\Tools\\mingw730_64\\bin"
    }
  },

保存退出后,F1输入cmake select a kit,选择scan for kits之后就能找到刚才定位的套件了,选择mingw73_64对应的套件,跑到main.cpp象征性打个断点,F5运行。

可能极容易出现这样的现象:调试也好,直接运行也好,直接闪退了

笔者通过从文件管理器直接打开可执行文件,发现提示缺少Qt相关的dll文件,于是在build目录下运行了一把windeployqt,后续没再出过问题:

D:\APPs\Qt\5.14.2\5.14.2\mingw73_32\bin\windeployqt.exe .\HelloWorld.exe

然后终于到了F5调试的阶段:

VSCode+Qt+MinGW开发环境搭建

大功告成!

总结

  1. F1Ctrl+Shift+P异常强大,可以执行各种插件的命令;
  2. QtConfigure先找到安装的Qt目录,使用插件的set qt dir指令;
  3. QtConfigure创建新的Qt项目,依次经过输入项目名称、选择套件、选择CMake构建工具、选择是否包含UI文件几个步骤,完成项目创建;
  4. CMake Tools需要找到Qt的套件,通过使用插件的Edit User-Local CMake Kits指令,在打开的cmake-tools-kits.json文件中添加Qt的套件;
  5. CMake Tools选择和创建工程时相同的Qt的套件
  6. 构建一次目标,随后使用windeployqtbuild目录补全缺失的dll文件;
  7. F5调试,大功告成。

遗留问题

大体框架完成了,能实现VSCode+Qt+MinGW的开发,但仍然有几个方面值得改善:

  1. windeployqt这一步应该可以用VSCode的脚本自动完成,应该是在.vscode文件夹下的相关json文件中指定;

  2. .h文件和.cpp文件中均有编译错误,这一点其实很不应该,这对开发过程影响还是较大的,应该通过简单的配置或者安装其他插件就能够避免;

  3. .vscode/launch.json文件中,即使是32位程序,使用的debugger也似乎是64位的,似乎不太对劲,在.../mingw730_32/bin目录下是有gdb.exe的,这个问题或许需要修改QtConfigure插件源码才能改正,或者如果不影响就不需要改动也可;

    “miDebuggerPath”: “d:/APPs/Qt/5.14.2/Tools/mingw730_64/bin/gdb.exe”文章来源地址https://www.toymoban.com/news/detail-411316.html

到了这里,关于VSCode+Qt+MinGW开发环境搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • GCC - 基于win10平台搭建Cmake + MinGW + gcc-arm-none 开源开发环境

    基于GUN开源工具链,搭建Windows平台下 ARM 编译运行环境! 🐱‍🚀 文中涉及的开发工具包已打包上传 ,可点击此处下载。 1、 建议直接下载安装git (内部集成有该工具),也可点击此处单独下载Git Bash工具; 2、如无法直接调用,添加对应环境变量; 32位下载地址:  MinG

    2024年02月10日
    浏览(42)
  • Qt+VsCode环境搭建

    1、安装Cmake 去官网安装,添加环境变量(这里不细说,操作比较简单简单) 2、安装Qt(这里是5.9.9) (1)官网(https://download.qt.io/archive/qt/)下载安装程序,指定安装目录(先注册一个账号) (2)选择需要的组件 (3)配置环境变量 将Qt安装目录下的mingw53_32与mingw530_32下的

    2024年02月12日
    浏览(34)
  • 【Qt笔记】1.VSCode搭建Qt运行环境

    Qt6之后已经抛弃qmake,使用cmake。 cmake相对qmake来说只有优点没有缺点。 使用VSCode搭建完Qt的运行环境就能开开心心debug了. vscode需要使用的插件: 1.Qt Configure 2.Qt tools 3.CMake 4.CMake Tools c++插件可以不关注,缺啥都会提醒你.正常安装即可。 安装好以上的插件后,ctrl + shift + p调用起命

    2024年02月06日
    浏览(37)
  • VSCode配置C/C++环境,编辑(VSCode)+ 编译(MinGW->GCC)+ 调试(MinGW->GBD)

      直接去官网下载并安装即可:https://code.visualstudio.com/。注意:VSCode只是编辑器,可以看代码,编辑代码,但不能编译代码。   如果说VSCode可以实现代码编辑,MinGW则可以实现代码编译和调试,其中编译功能是通过MinGW中的GCC实现的(生成一个.exe文件),调试功能则是通

    2024年02月07日
    浏览(47)
  • VsCode搭建Java开发环境 vscode搭建java开发环境 vscode springboot 搭建springboot

    插件市场 搜索 java , 将下面 6个插件全部安装 Java插件自带了 Lombok 不需要额外配置 插件市场 搜索 spring , 将下面 4个插件全部安装 Vscode也是有 和Idea一样 对应的 MyBatis插件 和 idea 同款 VSCode只是个开发工具,不像IDEA那样直接集成Maven,需要安装好Maven并配置环境变量 下载Maven的

    2024年02月03日
    浏览(72)
  • Win11系统vscode配置C++环境:Vscode+MinGw+Cmake

    1.下载解压MinGw-W64 进入MinGw-w64官网https://www.mingw-w64.org/,点击Download,点击MingW-W64-builds 找到Installation:Github,点击跳转到Github页面。这里不推荐很多教程使用的SourceForge上下载安装,SourceForge上构建的版本很久,目前仅支持到8.1.0,而github已经支持到了13.2.0。其次,SourceForge虽然

    2024年03月17日
    浏览(65)
  • VSCode使用MinGW编译器,配置C/C++环境

    目录 一、安装VSCode 二、安装MinGW编译器 1、配置环境变量 2、测试配置是否成功 三、配置VSCode 1、安装所需扩展 2、新建代码存放文件夹 3、添加配置文件 4、配置文件内容 (1)c_cpp_properties.json (2)launch.json (3)settings.json (4)tasks.json 测试 其他:C++程序运行 每次换了电脑

    2024年01月20日
    浏览(57)
  • vscode Java开发环境搭建

    基于VS Code的插件Java Extension Pack搭建Java项目,然后编译、打包、部署。适合新手或者从其他语言转JAVA的小伙伴们快速入门JAVA开发。 VS Code在插件市场中搜索Java,第一个就是Extension Pack for Java,内置了6个依赖插件,直接一键安装即可。然后是热部署插件,市场搜索Deploy安装即

    2024年02月09日
    浏览(43)
  • vscode+ros开发环境搭建

    目录 介绍   前提 vscode安装  vscode插件安装   工作空间准备    打开vscode    创建catkin包  编写cpp代码 编译 运行     启动ros服务     监听话题     启动ros测试   ros开发是机器人开发中必不可少的工作,语言选择可以是c++,也可以是python。工具的话,不能像windows系统那样丰

    2024年02月11日
    浏览(39)
  • MicroPython VSCode开发环境搭建

    本文中,使用的是 ESP32模块的开发板,下面的例子都是以ESP32开发板作为例子进行说明,如果你用的是其它的MicroPython开发板,只需要下载相应的固件和工具进行操作,大同小异。 操作系统使用的Windwos,如果你使用的Mac或者Linux,可能在下载或安装一些工具的时候会有差别,

    2024年02月04日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包