Ubuntu-20.04.2 mate 上安装、配置、测试 qtcreator

一、从repo中安装

Ubuntu-20.04.2的repo中,qtcreator安装包挺全乎的,敲完 sudo apt install qtcreator 看一下同时安装和新软件包将被安装列表,压缩包252MB,解压安装后933MB,集大成的一包。

sudo apt install qtcreator将会同时安装下列软件:binfmt-support clang-14 clang-tidy clang-tidy-14 clang-tools-14 lib32gcc-s1lib32stdc++6 libc6-i386 libclang-common-14-dev libclang-cpp14 libclang1-14libkf5syntaxhighlighting-data libkf5syntaxhighlighting5 libllvm14libncurses-dev libobjc-11-dev libobjc4 libpfm4 libqt5designercomponents5libqt5quicktest5 libqt5serialport5 libqt5sql5-sqlite libqt5xmlpatterns5libtinfo-dev libxml2-dev libyaml-cpp0.7 libz3-4 libz3-dev llvm-14llvm-14-dev llvm-14-linker-tools llvm-14-runtime llvm-14-tools qdoc-qt5qhelpgenerator-qt5 qmlscene qt3d5-doc qt5-assistant qt5-docqt5-qmltooling-plugins qtattributionsscanner-qt5 qtbase5-dev-toolsqtbase5-doc qtcharts5-doc qtchooser qtconnectivity5-doc qtcreator-dataqtcreator-doc qtdatavisualization5-doc qtdeclarative5-dev-toolsqtdeclarative5-doc qtgamepad5-doc qtgraphicaleffects5-doc qtlocation5-docqtmultimedia5-doc qtnetworkauth5-doc qtquickcontrols2-5-docqtquickcontrols5-doc qtscript5-doc qtscxml5-doc qtsensors5-docqtserialbus5-doc qtserialport5-doc qtsvg5-doc qttools5-dev-toolsqttools5-doc qtvirtualkeyboard5-doc qtwayland5-doc qtwebchannel5-docqtwebengine5-doc qtwebsockets5-doc qtwebview5-doc qtx11extras5-docqtxmlpatterns5-dev-tools qtxmlpatterns5-doc
建议安装:clang-14-doc ncurses-doc llvm-14-doc qtbase5-dev clazy subversion valgrindpython3-pylsp
下列【新】软件包将被安装:binfmt-support clang-14 clang-tidy clang-tidy-14 clang-tools-14 lib32gcc-s1lib32stdc++6 libc6-i386 libclang-common-14-dev libclang-cpp14 libclang1-14libkf5syntaxhighlighting-data libkf5syntaxhighlighting5 libllvm14libncurses-dev libobjc-11-dev libobjc4 libpfm4 libqt5designercomponents5libqt5quicktest5 libqt5serialport5 libqt5sql5-sqlite libqt5xmlpatterns5libtinfo-dev libxml2-dev libyaml-cpp0.7 libz3-4 libz3-dev llvm-14llvm-14-dev llvm-14-linker-tools llvm-14-runtime llvm-14-tools qdoc-qt5qhelpgenerator-qt5 qmlscene qt3d5-doc qt5-assistant qt5-docqt5-qmltooling-plugins qtattributionsscanner-qt5 qtbase5-dev-toolsqtbase5-doc qtcharts5-doc qtchooser qtconnectivity5-doc qtcreatorqtcreator-data qtcreator-doc qtdatavisualization5-docqtdeclarative5-dev-tools qtdeclarative5-doc qtgamepad5-docqtgraphicaleffects5-doc qtlocation5-doc qtmultimedia5-doc qtnetworkauth5-docqtquickcontrols2-5-doc qtquickcontrols5-doc qtscript5-doc qtscxml5-docqtsensors5-doc qtserialbus5-doc qtserialport5-doc qtsvg5-docqttools5-dev-tools qttools5-doc qtvirtualkeyboard5-doc qtwayland5-docqtwebchannel5-doc qtwebengine5-doc qtwebsockets5-doc qtwebview5-docqtx11extras5-doc qtxmlpatterns5-dev-tools qtxmlpatterns5-doc
升级了 0 个软件包,新安装了 76 个软件包,要卸载 0 个软件包,有 8 个软件包未被升级。
需要下载 252 MB 的归档。
解压缩后会消耗 933 MB 的额外空间。
您希望继续执行吗? [Y/n] 

二、安装完成后

菜单的编程中增加四项,Qt5 设计器既可单独使用、生成C/C++代或python代码,也是Qt Creator集成在一起的界面设计器。

三、运行Qt Creator

从文件菜单中建新文件或项目,选如图的应用程序,点击Choose,然后起项目名称,并浏览选择创建路径,那里是项目存放的地方。

接着点击下一步,选择默认的qmake作为 build system,然后,下一步。

下面的配置信息不用改,默认即可。点击下一步。

接下来,不需要多文种配置,直接点下一步即可。

接下的一步比较重要。因为qt creator 可编译桌面项目、安桌项目等,要配置不同的工具链。初始安装后这里是空的,先配置一个桌面开发设置,点options

给配置起个名字,比如 mydeskconf, 然后下拉右边的滚动条,配置其它项。

接下来配置编译器和Qt version, 初始安装后这些地方是空的、没配置项。

由于 build-essential 系统预置好的,点上图右侧的 spin button 即可找到下面的编译器自动填充。

接下来配置 Qt version ,点击它右边的 Manage

弹出的窗口中,点击添加,然后选qmake,然后点页面下部的 “打开”

点击后提示错误,不能打开qmake, 提示/usr/lib/qt5/bin/qmake不是可执行文件,/usr/bin的qmake也同样不能选。问题在于虽然 qtcreator 的包集大成了,但没有将 qtbase5-dev 包进去。因此,在这个卡点位置,在终端上执行 sudo apt install qtbase5-dev ,安装好后,再点上面的“添加”按钮。版本信息就自动带出来了,只需点击确定即可。

注意看左边的栏,刚才 Translation 默认不多文种翻译后,到了kits 套件选择就有了 mydeskconf 这项刚刚做好的配置,以后开发桌面程序均可使用此配置,如此,可以创建android等其它配置。

下一步,默认,点击完成。

如下程序框加就自动生成了。main主程序显示mainwindow窗口,mainwindow窗口负责自己的组件管理,mainwindow.ui是界面、双击它就会出界面图形。WINDOWS建结构、注册窗口、显示窗口、主程序循环等等罗嗦环节,到了qt 这里全部精简,几行程序全都搞定了。

双击mainwindow.ui, 窗口设计器就出来了

“在这里输入”是做菜单的,就不做了,从左边按住左键拖过来 pushButton、lineEdit、和 pushButton_2,三个组件,编号是它自动加上的。

设计:按pushButton时,lineEdit1显示Hello World!  ;  按pushButton_2时,终止程序。

选中pushButton, 在右边的pushButton上右键,在右键菜单上“转到槽”

接着选“信号”,或叫even也行,就选clicked(),然后就确定。这和VS上开发时双击button差不多一个意思了,下面的 pushButton_2也同样处理。

上面的工作完成后,自动在mainwindow.cpp中创建函数框架,或叫槽。

ui的lineEdit写上Hello World! , 按pushButton_2时销毁主窗口、程序退出。接下来,在菜单“构建”中选构建,然后再选运行、或直接 ctrl+r 运行。

按pushButton和pushButton_2,符合预期设计。至此,qtcreator安装完毕,经过工具链配置,再简单编程,对安装完成了有效验证。

如果作为学习工具,QT5有许多样例可以参考学习,可增加下面的两个库。

sudo apt install qtbase5-doc-dev qtbase5-examples

还有串口,webkit, websocket等其它模块,可随用随加。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/223178.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Java语言解决古典猴子分桃问题

一、主要思想 五只猴子分桃 第一只猴子呀 平均分成五分 挤出来多一个 多的扔入海中 拿了其中一份 来了五只猴子 均是如此操作 第五只猴子呀 还存有多少只 二、基本代码 public class MonkeyPeach {public static void main(String[] args){int n 1;int m 0;int flag1;int…

uniapp如何原生app-云打包

首先第一步,需要大家在HBuilder X中找到一个项目,然后呢在找到上面的发行选项 发行->原生App-云打包 选择完该选中的直接大包就ok。 大包完毕后呢,会出现一个apk包,这是后将这个包拖动发给随便一个人就行了。 然后接收到的那…

【5G PHY】NR参考信号功率和小区总传输功率的计算

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

初识Docker-什么是docker

Docker是一个快速交付应用、运行应用的技术 目录 一、Docker 二、运用场景 一、什么是Docker?它的作用是什么? Docker如何解决大型项目依赖关系复杂,不同组件依赖的兼容性问题? Docker允许开发中将应用、依赖、函数库、配置一起打包&…

MySQL中CASE when 实战

CASE 语法 CASEWHEN condition1 THEN result1WHEN condition2 THEN result2WHEN conditionN THEN resultNELSE result END; 将表中的内容转换为右边的形式: 1、创建表,创建数据 CREATE TABLEchapter10_7 (order_id VARCHAR(255) NULL,price VARCHAR(25…

阿里云经济型、通用算力型、计算型、通用型、内存型云服务器最新活动报价

阿里云作为国内领先的云计算服务提供商,提供了多种规格的云服务器供用户选择。为了满足不同用户的需求,阿里云推出了经济型、通用算力型、计算型、通用型和内存型等不同类型的云服务器。下面将详细介绍这些云服务器的最新活动报价。 一、阿里云特惠云服…

实验一传统的结构化的软件工程方法、实验二面向对象的软件工程、实验三软件测试

背景: 实验一 传统的结构化的软件工程方法 1实验目的 了解传统的软件工程方法的基本原理,掌握软件生命周期的全过程依次划分为需求分析、总体设计、详细设计、编码、测试、维护等几个重要阶段。每个阶段所要完成的任务以及提交的文档。 2实验内容 …

25、新加坡南洋理工、新加坡国立大学提出FBCNet:完美融合FBCSP的CNN,EEG解码SOTA水准![抱歉老师,我太想进步了!]

前言: 阴阳差错,因工作需要,需要查阅有关如何将FBCSP融入CNN中的文献,查阅全网,发现只此一篇文章,心中大喜,心想作者哪家单位,读之,原来是自己大导(新加坡工…

OpenAI 官方 Prompt 工程指南:写好 Prompt 的六个策略

其实一直有很多人问我,Prompt 要怎么写效果才好,有没有模板。 我每次都会说,能清晰的表达你的想法,才是最重要的,各种技巧都是其次。但是,我还是希望发给他们一些靠谱的文档。 但是,网上各种所…

渗透实验 XSS和SQL注入(Lab3.0)

windows server2003IIS搭建 配置2003的虚拟机 1、利用AWVS扫描留言簿网站(安装见参考文档0.AWVS安装与使用.docx),发现其存在XSS漏洞,截图。 2、 Kali使用beef生成恶意代码 cd /usr/share/beef-xss./beef执行上面两条命令 …

DBA-MySql面试问题及答案-上

文章目录 1.什么是数据库?2.如何查看某个操作的语法?3.MySql的存储引擎有哪些?4.常用的2种存储引擎?6.可以针对表设置引擎吗?如何设置?6.选择合适的存储引擎?7.选择合适的数据类型8.char & varchar9.Mysql字符集10.如何选择…

【优化】XXLJOB修改为使用虚拟线程

【优化】XXLJOB修改为使用虚拟线程 新建这几个目录 类&#xff0c; 去找项目对应的xxljob的源码 主要是将 new Thread 改为 虚拟线程 Thread.ofVirtual().name("VT").unstarted 以下代码是 xxljob 2.3.0版本 举一反三 去修改对应版本的代码 <!-- 定…

Wordpress插件WP-Statistics无法识别来访IP国家和城市处理方法

Wordpress插件WP-Statistics&#xff0c;可以识别网站访问者的IP物理地址&#xff0c;统计出城市、国家&#xff0c;但最近发现都显示unknown/未知&#xff1a; 更新GeoIP数据库到最新还是不行&#xff1a; 偶然找到了之前能用的数据库&#xff0c;恢复回去&#xff0c;竟然大…

安全认证【八】

文章目录 8. 安全认证8.1 访问控制概述8.2 认证管理8.3 授权管理8.4 准入控制 8. 安全认证 8.1 访问控制概述 Kubernetes作为一个分布式集群的管理工具&#xff0c;保证集群的安全性是其一个重要的任务。所谓的安全性其实就是保证对Kubernetes的各种客户端进行认证和鉴权操作…

使用华为云 CodeArts 自动化部署 Discuz实验指导

本实验将介绍基于华为云 CodeArts&#xff0c;更方便地编写 playbook 代码&#xff0c;甚至可以拷贝他人分享的代码仓库&#xff0c;同时基于自身 Ansible 组件实现快速运维部署&#xff0c;减轻工作负担&#xff0c;减少不必要的问题排查环节。 实验后台&#xff1a;开发者云…

pytorch-模型预测概率值为负数

在进行ocr识别模型预测的时候&#xff0c;发现预测的结果是正确的&#xff0c;但是概率值是负数&#xff1a; net_out net(img) #torch.Size([70, 1, 41]) logit, preds net_out.max(2) #41是类别 需要对类别取最大值 preds preds.transpose(1, 0).contiguous().view(-1) …

浏览器原理篇—渲染优化

渲染优化 通常一个页面有三个阶段&#xff1a;加载阶段、交互阶段和关闭阶段 加载阶段&#xff0c;是指从发出请求到渲染出完整页面的过程&#xff0c;影响到这个阶段的主要因素有网络和 JavaScript 脚本。交互阶段&#xff0c;主要是从页面加载完成到用户交互的整合过程&…

省时攻略:快速获得Creo安装包,释放创意天才!

不要再在网上浪费时间寻找Creo的安装包了&#xff0c;一键下载安装&#xff0c; 你要的一切都可以在这里找到&#xff01;我们深知在海量的信息中寻找合适的软件包并非易事&#xff0c;而且往往还伴随着繁琐的安装过程。然而&#xff0c;现在有了我们&#xff0c;一切变得轻松简…

WPF中使用ListView封装组合控件TreeView+DataGrid-粉丝专栏

wpf的功能非常强大&#xff0c;很多控件都是原生的&#xff0c;但是要使用TreeViewDataGrid的组合&#xff0c;就需要我们自己去封装实现。 我们需要的效果如图所示&#xff1a; 这2个图都是第三方控件自带的&#xff0c;并且都是收费使用。 现在我们就用原生的控件进行封装一…