Linux下在qtcreator中创建qt程序

目录

1、新建项目

2、单工程项目创建 

3、多工程项目创建

 4、添加子工程(基于多工程目录结构)

5、 .pro文件


1、新建项目

切换到“编辑”界面,点击菜单栏中的“文件”-“新建文件或项目”

2、单工程项目创建 

只有一个工程的项目,新建模板时就只用在“项目”-“Application”中选,最右边的一栏有该模板的解释说明。按照需求创建对应的应用程序,在此我们创建一个最常用的带UI的qt应用程序作为示范。

选择“Qt Widget Application”,点击“Choose”按钮,进行创建。设置项目名称与项目路径,如图所示。设置完成后,点击“下一步”。

 因为我们使用了集成安装包,QtCreator的环境都已经自动安装好了,不用配置Kit,可以直接点击下一步。如果在当前页面“下一步”按钮被禁用了,则代表需要配置Kit。详细配置可以看该章节第四点。

配置类信息,设置类名与编译文件等的名称,点击下一步。注:建议类名与头文件、源文件、ui文件的名称与大小写保持一致。如图所示。

项目建立完成。该界面可以查看即将生成的所有文件与路径。因为是单工程项目,不需要配置“作为子项目添加到项目中”;“添加到版本控制系统”,如果有需要可以选择。:.pro文件是qt的配置文件。

3、多工程项目创建

要创建一个多工程的项目,首先要建一个总的项目文件夹,作为根项目。

“文件”-“新建文件或项目”-“其他项目”-“子目录项目”-“Choose”。可以看到右边选中“子目录项目”后,右边的解释。

设置项目路径与总配置文件名称。

 点击下一步可以看到即将生成的目录,该目录只生成一个.pro,作为总配置文件。

 点击“完成&添加子项目”,对子项目进行添加,步骤与创建单项目目录步骤基本一致,唯一不同的是需要配置“汇总”-“作为子项目添加到项目中”,选择刚才创建的根项目,点击“完成”即可。

 创建成功后,目录结构如图所示。可以看到总项目目录“MulPrj”下存在一个子项目目录“Projrct_1”,“Project_1”下存在该项目的配置文件与.h/.cpp等文件。

第一个创建的工程应该为Application项目,可作为启动项。

点击运行程序显示窗口。

 4、添加子工程(基于多工程目录结构)

添加子工程有两个方法。

  • 点击多工程项目目录结构的根项目,右键-“新子项目”,进行子项目的添加。

  • 点击“文件”-“新建文件或项目”。

但是不论哪种方法,进入模板选择界面后,都需要选择“Library”-“C++库”。

进入子项目的创建。

 勾选需要使用到的模块,一般勾选图中框起来的三个。

仍然让项目名称与.h/.cpp文件名称保持一致。

“作为子项目添加到项目中”仍然选择根项目,然后点击“完成”。

 此时的目录结构如下:

文件夹下的目录结构如下:

5、 .pro文件

在多工程项目中存在多个.pro文件,大致可以分为三类:

  • 根项目.pro:例如MulPrj.pro,用来控制所有子项目。

在这里我们只关注“SUBDIRS”,是根项目的固定写法,用来声明工程目录集的,需要添加或删除工程都可以在这里进行,删除对应的工程名称保存后,qt自动删除树目录结构下的对应工程。

注释之后可以看到目录结构下的工程都不见了。

也可以指定到目录文件夹下的.pro,在.pro与工程文件家名称不相同时使用。

  •  启动项.pro:例如Project_1.pro,作为启动项,与子工程的配置有一些不同。
  • Lib子工程.pro:例如Project_2.pro,作为创建时以library作为模板创建的工程。
#-------------------------------------------------
#
#ProjectcreatedbyQtCreator2023-03-03T14:27:35
#
#-------------------------------------------------QT+=coregui#“QT”是使用的QT库,从向导创建中可以看出,默认包含gui与core。如果不使用则生成的为QT-=coregui。这里是“+=”代表两个都使用。greaterThan(QT_MAJOR_VERSION,4):QT+=widgetsTARGET=Project_1  #生成.so目标,名称不做修饰,不用添加.so,自动生成名称.so。如:TARGET = Project_change  ,生成的.so为“Project_change.so”
DESTDIR= ../Bin#指定.so的生成路径
TEMPLATE=app#固定写法 主工程为app,子工程为lib#Thefollowingdefinemakesyourcompileremitwarningsifyouuse
#anyfeatureofQtwhichhasbeenmarkedasdeprecated(theexactwarnings
#dependonyourcompiler).Pleaseconsultthedocumentationofthe
#deprecatedAPIinordertoknowhowtoportyourcodeawayfromit.
DEFINES+=QT_DEPRECATED_WARNINGS  #预定义头#YoucanalsomakeyourcodefailtocompileifyouusedeprecatedAPIs.
#Inordertodoso,uncommentthefollowingline.
#YoucanalsoselecttodisabledeprecatedAPIsonlyuptoacertainversionofQt.
#DEFINES+=QT_DISABLE_DEPRECATED_BEFORE=0x060000#disablesalltheAPIsdeprecatedbeforeQt6.0.0CONFIG+=c++11SOURCES+=\
main.cpp\
Project_1.cppHEADERS+=\
Project_1.hFORMS+=\
Project_1.ui#Defaultrulesfordeployment.
qnx:target.path=/tmp/$${TARGET}/bin
else:unix:!android:target.path=/opt/$${TARGET}/bin
!isEmpty(target.path):INSTALLS+=target

在pro中配置目标路径后,在“项目”-“概要”中取消勾选“shadow build”,让makefile默认生成在该项目.pro所在路径。

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

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

相关文章

Axure RP移动端高保真CRM办公客户管理系统原型模板及元件库

Axure RP移动端高保真CRM办公客户管理系统原型模板及元件库,一套典型的移动端办公工具型APP Axure RP原型模板,可根据实际的产品需求进行扩展,也可以作为移动端原型设计的参考案例。为提升本作品参考价值,在模板设计过程中尽量追求…

chatGPT应用于房地产行业

作为 2023 年的房地产专业人士,您无疑认识到技术对行业的重大影响。近年来,一项技术进步席卷了世界——人工智能。人工智能彻底改变了房地产业务的各个方面,从简化管理任务到增强客户互动。 在本文中,我们将探讨几种巧妙的人工智…

zabbix自动注册服务器以及部署代理服务器

文章目录 Zabbix自动注册服务器及部署代理服务器一.zabbix自动注册1.什么是自动注册2.环境准备3.zabbix客户端配置4.在 Web 页面配置自动注册5.验证自动注册 二.部署 zabbix 代理服务器1.分布式监控的作用:2.环境部署3.代理服务器配置4.客户端配置5.web页面配置5.1 …

分类预测 | MATLAB实现GWO-BiLSTM-Attention多输入分类预测

分类预测 | MATLAB实现GWO-BiLSTM-Attention多输入分类预测 目录 分类预测 | MATLAB实现GWO-BiLSTM-Attention多输入分类预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.GWO-BiLSTM-Attention 数据分类预测程序 2.代码说明:基于灰狼优化算法&#xff08…

微信小程序(原生)搜索功能实现

一、效果图 二、代码 wxml <van-searchvalue"{{ keyword }}"shape"round"background"#000"placeholder"请输入关键词"use-action-slotbind:change"onChange"bind:search"onSearch"bind:clear"onClear&q…

实践-CNN卷积层

实践-CNN卷积层 1 卷积层构造2 整体流程3 BatchNormalization效果4 参数对比5 测试效果 1 卷积层构造 2 整体流程 根据网络结构来写就可以了。 池化 拉平 训练一个网络需要2-3天的时间。用经典网络来&#xff0c;一些细节没有必要去扣。 损失函数&#xff1a; fit模型&…

运维监控学习笔记1

1、监控对象&#xff1a; 1、监控对象的理解&#xff1b;CPU是怎么工作的&#xff1b; 2、监控对象的指标&#xff1a;CPU使用率&#xff1b;上下文切换&#xff1b; 3、确定性能基准线&#xff1a;CPU负载多少才算高&#xff1b; 2、监控范围&#xff1a; 1、硬件监控&#x…

线性扫描寄存器分配算法介绍

线性扫描寄存器分配 文章目录 线性扫描寄存器分配1. 算法介绍2. 相关概念3. 算法的实现3.1 伪代码3.2 图示 参考文献 论文地址&#xff1a; Linear Scan Register Allocation ​ 我们描述了一种称为线性扫描的快速全局寄存器分配的新算法。该算法不基于图形着色&#xff0c;而…

echarts3d柱状图

//画立方体三个面 const CubeLeft echarts.graphic.extendShape({shape: {x: 0,y: 0,width: 9.5, //柱状图宽zWidth: 4, //阴影折角宽zHeight: 3, //阴影折角高},buildPath: function (ctx, shape) {const api shape.api;const xAxisPoint api.coord([shape.xValue, 0]);con…

陪诊小程序开发|陪诊陪护小程序让看病不再难

陪诊小程序通过与医疗机构的合作&#xff0c;整合了医疗资源&#xff0c;让用户能够更加方便地获得专业医疗服务。用户不再需要面对繁琐的挂号排队&#xff0c;只需通过小程序预约服务&#xff0c;便能够享受到合适的医疗资源。这使得用户的就医过程变得简单高效&#xff0c;并…

【EI/SCOPUS检索】第三届计算机视觉、应用与算法国际学术会议(CVAA 2023)

第三届计算机视觉、应用与算法国际学术会议&#xff08;CVAA 2023) The 3rd International Conference on Computer Vision, Application and Algorithm 2023年第三届计算机视觉、应用与算法国际学术会议&#xff08;CVAA 2023&#xff09;主要围绕计算机视觉、计算机应用、计…

PPT颜色又丑又乱怎么办?

一、设计一套PPT时&#xff0c;可以从这5个方面进行设计 二、PPT颜色 &#xff08;一&#xff09;、PPT常用颜色分类 一个ppt需要主色、辅助色、字体色、背景色即可。 &#xff08;二&#xff09;、搭建PPT色彩系统 设计ppt时&#xff0c;根据如下几个步骤&#xff0c;依次选…

Arduino驱动红外二氧化碳传感器(气体传感器篇)

目录 1、传感器特性 2、驱动程序 红外激光传感器是将成熟的红外吸收气体检测技术与精密光路设计、精良电路设计紧密结合而制作出的高性能传感器,具有高灵敏度、高分辨率、低功耗,响应快、抗水汽干扰、不中毒、稳定性高、使用寿命长等特点。本篇博文使用Arduino驱动红外二氧…

Android学习之路(2) 设置视图

一、设置视图宽高 ​ 在Android开发中&#xff0c;可以使用LayoutParams类来设置视图&#xff08;View&#xff09;的宽度和高度。LayoutParams是一个用于布局的参数类&#xff0c;用于指定视图在父容器中的位置和大小。 ​ 下面是设置视图宽度和高度的示例代码&#xff1a; …

Win10基于 Anaconda 配置 Deeplabcut 环境

最近需要做动物行为学分析的相关研究&#xff0c;同时由于合作者只有 Windows 系统&#xff0c;于是只好在 Windows 中配置环境。说实话还真的是挺折磨的。。。 一、下载 Anaconda 可以通过清华源下载 Anaconda&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/anaconda/ar…

奥威BI数据可视化工具:报表就是平台,随时自助分析

别的数据可视化工具&#xff0c;报表就只是报表&#xff0c;而奥威BI数据可视化工具&#xff0c;一张报表就约等于一个平台&#xff0c;可随时展开多维动态自助分析&#xff0c;按需分析&#xff0c;立得数据信息。 奥威BI是一款多维立体分析数据的数据可视化工具。它可以帮助…

电脑xinput1_3.dll丢失的解决方法?哪个解决方法更简单

最近在打开软件或者游戏的时候&#xff0c;电脑提示xinput1_3.dll文件丢失的错误。这个问题导致我无法运行某些游戏和应用程序。通过一番尝试和研究&#xff0c;我找到了一些修复xinput1_3.dll文件丢失的方法&#xff0c;并在此分享给大家。 首先&#xff0c;我了解到xinput1_3…

NSI45030AT1G LED驱动器方案为汽车外部及内部照明恒流稳流器(CCR)方案

关于线性恒流调节器&#xff08;CCR&#xff09;&#xff1a;是一种用于控制电流的稳定输出。它通常由一个功率晶体管和一个参考电流源组成。CCR的工作原理是通过不断调节功率晶体管的导通时间来维持输出电流的恒定。当输出电流超过设定值时&#xff0c;CCR会减少功率晶体管的导…

红日ATT&CK VulnStack靶场(三)

网络拓扑 web阶段 1.扫描DMZ机器端口 2.进行ssh和3306爆破无果后访问web服务 3.已知目标是Joomla&#xff0c;扫描目录 4.有用的目录分别为1.php 5.configuration.php~中泄露了数据库密码 6.administrator为后台登录地址 7.直接连接mysql 8.找到管理员表&#xff0c;密码加密了…

提高学生学习效率的模拟考试系统

在如今竞争激烈的社会环境下&#xff0c;提高学生的学习效率显得尤为重要。为了帮助学生评估自己的学习水平并提供有针对性的学习建议&#xff0c;开发一款模拟考试系统是非常必要的。 一、学生信息录入 模拟考试系统首先需要学生信息录入功能。学生可以通过一个简单的表单填…