当前位置: 首页 > news >正文

Ubuntu下安装vsode+qt搭建开发框架(一)

Ubuntu下安装vsode+qt搭建开发框架(一)

g++的编译环境,这里不介绍,可点击这里查看

查看一下当前的g++环境

g++ --version
g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

一、安装qt5

首先安装qt环境,我们先用qmake --version检查一下是否安装过qt开发环境

qmake --version
QMake version 3.1
Using Qt version 5.15.3 in /usr/lib/x86_64-linux-gnu

如未安装,则及时安装

sudo apt install qtbase5-dev qt5-qmake -y
sudo apt install qttools5-dev-tools -y

‌qtbase5-dev‌是Qt 5的核心开发库,包含了构建Qt应用程序所需的基本组件和工具。它提供了Qt框架的核心功能,包括窗口系统集成、事件处理、基本的GUI组件等。安装qtbase5-dev可以让你使用Qt创建基本的GUI应用程序,并且是进行更复杂开发的基础‌

qt5-qmake‌是Qt的构建工具,主要用于解析项目文件(通常是.pro文件),生成适合当前平台的Makefile或其他构建文件。qmake通过读取项目文件中的配置信息,自动化地处理编译和链接过程,极大地简化了Qt应用程序和库的编译过程。开发者只需描述项目的需求和配置,qmake会自动生成相应的构建文件,从而专注于代码开发而不是编译细节‌

qttools5-dev-tools‌包含了一系列用于Qt开发的工具和脚本,这些工具可以帮助开发者更高效地进行开发工作。主要包含的工具和脚本有:
‌moc‌:用于处理C++源代码中的Qt宏。
‌qdbuscpp2xml‌和‌qdbusxml2cpp‌:用于处理D-Bus信号和槽的XML文件。
‌rcc‌:资源编译器,用于将资源文件编译成二进制格式。
‌syncqt‌:同步Qt的版本信息。
‌uic‌:用户界面编译器,用于将.ui文件编译成C++源代码‌

二、vsode中配置qt环境

首先我们一个空的文件夹,用vscode打开,然后.vscode目录下创建如下几个json配置文件
在这里插入图片描述
可直接创建.vscode目录,再手动创建上面3个配置文件,也可参考这里创建;三个配置文件的内容如下:

tasks.json文件内容如下

{"version": "2.0.0","tasks": [{"type": "shell","label": "qmake build makefile","command": "/usr/lib/x86_64-linux-gnu/qt5/bin/qmake","args": [],"options": {},"problemMatcher": [],"group": "build"},{"type": "shell","label": "make build activefile","command": "/usr/bin/make","args": [],"options": {},"problemMatcher": [],"group": "build","dependsOn": ["qmake build makefile"]}]
}

上面定义了2个任务,首先执行第一个 任务名为qmake build makefiletask,该任务用于生成makefile;
第二任务名为make bui

相关文章:

  • 智慧园区IOT项目与AI时代下的机遇 - Java架构师面试实战
  • 设计一个关键字统计程序:利用HashMap存储关键字统计信息,对用户输入的关键字进行个数统计。
  • P3309 [SDOI2014] 向量集 Solution
  • 浏览器界面无显示,提示“代理服务器可能有问题”,这是怎么回事呢?
  • Windows 安装 Neo4j 教程
  • 做大模型应用所需的一点点基础数学理论
  • 内存四区(栈)
  • Java24 抗量子加密:后量子时代的安全基石
  • 【MCP】了解远程MCP调用背后使用的SSE协议
  • 使用matplotlib绘制Raincloud图/云雨图/柱状图/小提琴图
  • 学习记录:DAY18
  • 图论---LCA(倍增法)
  • 使用 AFL++ 对 IoT 二进制文件进行模糊测试 - 第二部分
  • Spring Boot 3.4.5 运行环境需求
  • 精益数据分析(26/126):依据商业模式确定关键指标
  • Nginx性能优化:从配置到缓存,全面提升Web服务器性能
  • 重定向和语言级缓冲区【Linux操作系统】
  • RT-Thread学习笔记(四)
  • 【Android】四大组件之Service
  • MEME在线进行蛋白氨基酸序列的保守基序预测的具体分析步骤
  • 健康社区“免疫行动”促进计划启动,发布成人预防“保典”
  • 交通枢纽、产业升级,上海松江新城有这些发展密码
  • 魔都眼·上海车展⑤|被主播包围的新车
  • “住手!”特朗普罕见公开谴责普京,俄称愿恢复对话但要看美方行动
  • 牛市早报|商务部:目前中美之间未进行任何经贸谈判
  • 经济日报:美离间国际关系注定徒劳无功