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

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

http://www.xdnf.cn/news/2155.html

相关文章:

  • 推荐几个免费提取音视频文案的工具(SRT格式、通义千问、飞书妙记、VideoCaptioner、AsrTools)
  • 直线模组精度测试的标准是什么?
  • Linux 进程控制
  • 树状数组底层逻辑探讨 / 模版代码-P3374-P3368
  • 阿里云VS AWS中国区:ICP备案全攻略与常见误区解析
  • 判断 ONNX 模型是否支持 GPU
  • 微信小程序 - 根据经纬度打开导航
  • 追风赶月莫停留
  • WebcamJS中文文档
  • Debian安装避坑
  • 动态规划求解leetcode300.最长递增子序列(LIS)详解
  • React 与 Vue 的区别:你会选择哪个框架呢
  • 关于Android Studio的Gradle各项配置
  • 高级 SQL 技巧:提升数据处理能力的实用方法
  • 图像畸变-径向切向畸变实时图像RTSP推流
  • leetcode 26和80
  • strcmp()在C语言中怎么用(附带实例)
  • CentOS 如何使用截图工具截取命令行操作的图片?
  • 定制一款国密浏览器(12):分析SM2签名算法的实现
  • 在 Linux 上安装 PNPM 的教程
  • Git分支重命名与推送参数解析
  • 案例速成GO操作redis,个人笔记
  • LeetCode100题
  • 案例速成GO+redis 个人笔记
  • 【springboot知识】配置方式实现SpringCloudGateway相关功能
  • TortoiseGit 入门指南
  • Linux基础命令总结
  • 【设计模式区别】装饰器模式和适配器模式区别
  • C#中wpf程序中的x名空间详解
  • CSS3布局方式介绍