VSCode + Qt + QMake 开发编译环境搭建
创作时间:
作者:
@小白创作中心
VSCode + Qt + QMake 开发编译环境搭建
引用
1
来源
1.
https://www.cnblogs.com/RioTian/p/18281114
本文将详细介绍如何在VSCode中配置Qt开发环境,使用QMake构建系统进行项目开发。文章主要针对Windows平台,但Mac和Linux平台的配置方式类似。
前置准备
- VSCode:最新版本即可
- 本地Qt环境:版本随意,本文主要针对较老版本使用Qmake构建系统的项目
环境变量
- Qt环境变量:需要配置Qt库和MinGW,建议使用Qt安装时自带的MinGW
VSCode插件
- C/C++:必需插件
- Qt tools:辅助插件
开始配置
1. 创建项目
先用Qt Creator创建一个Qmake项目,最简单的空白窗口项目即可。
2. 使用VSCode打开项目
3. 配置C/C++插件
在VSCode中使用快捷键Ctrl+Shift+P打开命令面板,输入c++,选择编辑配置。
4. 编辑C/C++设置
- 编译器路径:选择配置环境变量的Qt版本,如果没有下拉选项,手动复制路径
- IntelliSense模式:选择安装的GCC架构,例如
windows-gcc-x64 - 头文件路径:配置当前工作目录和Qt库的头文件路径
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"D:/software/language/qt/5.15.2/mingw81_64/include/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"compilerPath": "D:/software/language/qt/Tools/mingw810_64/bin/g++.exe",
"intelliSenseMode": "windows-gcc-x64"
}
],
"version": 4
}
5. 配置task.json
- 创建build目录:使用
mkdir命令创建构建目录 - qmake命令:将
.pro文件编译成makefile - make命令:编译生成可执行文件
- clean命令:清理构建目录
{
"version": "2.0.0",
"tasks": [
{
"label": "mkdir",
"type": "shell",
"options": {
"cwd": "${workspaceFolder}"
},
"command": "mkdir",
"args": ["-Force", "build"]
},
{
"label": "qmake-debug",
"type": "shell",
"options": {
"cwd": "${workspaceFolder}/build"
},
"command": "qmake",
"args": [
"../${workspaceFolderBasename}.pro",
"-spec",
"win32-g++",
"\"CONFIG+=debug\"",
"\"CONFIG+=qml_debug\""
],
"dependsOn": ["mkdir"]
},
{
"label": "make-debug",
"type": "shell",
"options": {
"cwd": "${workspaceFolder}/build"
},
"command": "mingw32-make",
"args": ["-f", "Makefile.Debug", "-j7"],
"dependsOn": ["qmake-debug"]
},
{
"label": "run-debug",
"type": "process",
"options": {
"cwd": "${workspaceFolder}/build/debug"
},
"command": "${workspaceFolderBasename}.exe",
"dependsOn": ["make-debug"]
},
{
"label": "qmake-release",
"type": "shell",
"options": {
"cwd": "${workspaceFolder}/build"
},
"command": "qmake",
"args": [
"../${workspaceFolderBasename}.pro",
"-spec",
"win32-g++",
"\"CONFIG+=qtquickcompiler\""
]
},
{
"label": "make-release",
"type": "shell",
"options": {
"cwd": "${workspaceFolder}/build"
},
"command": "mingw32-make",
"args": ["-f", "Makefile.Release", "-j7"],
"dependsOn": ["qmake-release"]
},
{
"label": "run-release",
"type": "process",
"options": {
"cwd": "${workspaceFolder}/build/release"
},
"command": "${workspaceFolderBasename}.exe",
"dependsOn": ["make-release"]
},
{
"label": "clean",
"type": "shell",
"options": {
"cwd": "${workspaceFolder}/build"
},
"command": "mingw32-make",
"args": ["clean"]
}
]
}
6. 配置断点调试
选择gdb启动模板进行修改,配置调试器路径和程序路径。
{
"version": "0.2.0",
"configurations": [
{
"name": "debug",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/Debug/${workspaceFolderBasename}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "D:/software/language/qt/Tools/mingw810_64/bin/gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "make-debug"
}
]
}
运行效果
- run-debug:生成Debug版本并运行
- run-release:生成Release版本并运行
- debug断点调试:使用GDB进行断点调试
热门推荐
蒸锅什么材质好?家庭用蒸锅怎么选择?
钼期货的交易特点是什么?它的市场需求和价格波动如何?
2024年全球及中国钼精矿行业供需现状,国内钼精矿资源储量雄厚,分布范围广「图」
printf函数输出到控制台的原理与实践
C语言内幕--printf的运行过程
计算机网络基础教程:路由的概念、路由器的功能、路由表的构建和常见的路由选择算法
酒店摄像头检查秘籍,守护你的隐私安全
工厂如何管理维修人员
【萍安健康】便秘老人如何科学运动?
中国历史名人236-蔡文姬
十年了,不愧是美剧天花板
AI高能耗背后,数据中心如何用上更多绿电?
未来已来:绿电驱动中国数据中心的崛起
如何根据患者需求灵活调节氧气供氧
平改坡屋面解决方案
从进化论视角剖析电影《金刚》形象的不合理性
高考小语种代替英语有什么弊端?高考小语种报考专业受限吗?
《Acta Materialia》:预测高熵合金固溶体的相稳定性!
辅酶Q10有什么用?中老年人真的要补充吗?
电视柜放鱼缸好吗?家居风水与实用性的探讨
废塑料的回收与再利用
失业保险金能异地领取吗?需要单位同意吗?
失业保险金申领指南:条件、异地领取及所需材料全解析
什么是土地租金
即时满足感:“小时达”如何改变我们的购物方式
高层二楼反水解决办法
远视眼伴有外隐斜该如何配镜矫正
发布已9年,GTX 1060 6GB还能流畅运行主流游戏吗?测试出炉
窦性心律逆钟向转位说明什么
如何用诗词,优雅而又不失礼貌地形容一位女子十分漂亮呢?