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

Qt Creator中的项目栏

shadow build: 

[基础]Qt Creator 的 Shadow build(影子构建)-CSDN博客

影子构建:将源码路径和构建路径分开(生成的makefile文件和其他产物都不放到源码路径),以此来保证源码路径的清洁。

实验1: 

我创建了两个项目:test和test1

不勾选的话:(test)

勾选的话:(test1)

观察生成的文件结构之间的区别:

test:

 test1:

Qt指定程序编译生成文件的位置:

QT 指定程序编译生成文件的位置_qt生成文件到指定路径-CSDN博客

基础知识:
1.MOC_DIR +=: moc文件存放的位置

在项目构建过程中,如果包含的QObject派生类,Q_OBJECT宏等元对象相关的代码,moc.exe会对这些文件进行处理,输出一个新的C++源代码文件,其中包含清单QObject类和元对象的所有信息,生成的文件一般以moc为后缀。

2.RCC_DIR +=:资源文件编译后存放的位置。

在项目构建过程中,资源文件通过rcc.exe处理后,生成后缀为.cpp的文件。为什么要这样处理呢?

因为资源文件并不能被C++编译器所识别,rcc.exe是Qt工具链中的一个工具,用于将资源文件编译为用于访问这些资源的C++代码,它会将资源文件转换为一个.cpp文件,其中包含了资源数据的定义和访问函数。这个生成的.cpp文件可以在应用程序的构建过程中被编译,生成一个二进制的.o目标文件,并最终被链接到应用程序中。

 

3.OBJECTS_DIR +=:存放编译中间产物(object文件)的目录

生成编译中间产物的过程是通过多个工具和可执行文件完成的,其中包括编译器(gcc,clang等)和链接器(MSVC,ld等),但没有一个特点.exe在全部过程中负责处理。生成编译中间产物的过程是为了将源代码转化为可执行文件或库文件。这个过程涉及编译源代码,处理元对象代码以及链接生成的目标文件和库文件,最终生成可以在计算机上运行的可执行文件或库文件。

 

4.UI_DIR +=: UI文件编译后存放的位置

在项目构建过程中,ui文件通过uic.exe处理后,生成后缀为.h或.cpp的文件。理由同上面的一样,因为C++编译器并不能识别QT的ui文件,所有要通过uic工具解析用户界面文件,生成对应的C++文件。

 具体案例:

# 指定构建目录位置CONFIG(debug , debug | release){DESTDIR += $$PWD/bin/Debug
}else{DESTDIR += $$PWD/bin/Release
}OBJECTS_DIR += $$DESTDIR/obj
MOC_DIR += $$DESTDIR/moc
RCC_DIR += $$DESTDIR/rcc
UI_DIR += $$DESTDIR/ui

这里的$$PWD,即当前目录,即.pro所在的目录 

相关文章:

Qt Creator中的项目栏

shadow build: [基础]Qt Creator 的 Shadow build(影子构建)-CSDN博客 影子构建:将源码路径和构建路径分开(生成的makefile文件和其他产物都不放到源码路径),以此来保证源码路径的清洁。 实验1: 我创建了两个项目:…...

keepalived+web 实现双机热备

环境:利用keeplived实现web服务器的双机热备(高可用) 注意: (1) 利用keeplivedweb做双击热备(高可用),最少需要两台服务器,可以实现多域名对应一个VIP,并且访问不同域名,显示不同主页&#xf…...

关于python的import

在Python中,import语句用于导入其他模块或模块中的特定部分,以便在代码中使用它们。这就可以重用代码,而不是每次都从头开始编写所有的功能。 基本用法 导入整个模块: import module_name 例如: import math print(…...

帕金森后期吞咽困难:破解难题,重拾生活美味!

在这个快节奏的时代,健康成为了我们最宝贵的财富。然而,对于帕金森病患者及其家庭而言,随着病情的进展,尤其是进入后期阶段,吞咽困难成为了他们不得不面对的严峻挑战。今天,就让我们一起走进这个温暖而坚韧…...

android 添加USB网卡并配置DNS

工作需要,需要使用TBox分享的网络,Android将TBox当作一个USB网卡,接下来就简单了,配置这个网卡的信息即可。 加载默认网卡的信息在frameworks/opt/net/ethernet/java/com/android/server/ethernet/EthernetTracker.java中 Ethern…...

【面试经典150】day 8

#1024程序员节 | 征文# 作为一个未来的程序员,现在我要继续刷题了。 力扣时刻。 目录 1.接雨水 2.罗马数字转整数 3.最后一个单词的长度 4.最长公共前缀 5.反转字符串中的单词 1.接雨水 好好好好好好,一开始就接雨水。我记得接了n次了。。。 痛苦战…...

Python -- 网络爬虫

Python – 网络爬虫 流程: 1. 连接链接获取页面内容(html文件); 2. 过滤获取需要信息(正则) [可能重复步骤1,2] ; 3. 存储文件到本地。一)网络连接获取页面内容 # 网络…...

【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-5

文件下载与邀请翻译者 学习英特尔开发手册,最好手里这个手册文件。原版是PDF文件。点击下方链接了解下载方法。 讲解下载英特尔开发手册的文章 翻译英特尔开发手册,会是一件耗时费力的工作。如果有愿意和我一起来做这件事的,那么&#xff…...

设计模式4 适配器 (adapter)

一句话,适配器按照客户的需求, 适配当前已有的接口。 目标接口:reqeust() public interface Target {void request(); //this is client needed interface }已有接口:specificRequest package com.example.adapter;import android.uti…...

《分布式机器学习模式》:解锁分布式ML的实战宝典

在大数据和人工智能时代,机器学习已经成为推动技术进步的重要引擎。然而,随着数据量的爆炸性增长和模型复杂度的提升,单机环境下的机器学习已经难以满足实际需求。因此,将机器学习应用迁移到分布式系统上,成为了一个不…...

【项目实战】HuggingFace初步实战,使用HF做一些小型任务

Huggingface初步实战 一、前期准备工作二、学习pipline2.1.试运行代码,使用HuggingFace下载模型2.2. 例子1,情感检测分析(只有积极和消极两个状态)2.3. 例子2,文本生成 三、学会使用Tokenizer & Model3.1.tokenizer(分词器&am…...

堆的应用——堆排序和TOP-K问题

1.堆排序 想法⼀&#xff1a; 基于已有数组建堆、取堆顶元素完成排序。也就是利用写好的堆数据结构&#xff08;之前的文章有讲解&#xff09;&#xff0c;去实现排序。 void HeapSort(int* a, int n){HP hp;for(int i 0; i < n; i){HPPush(&hp,a[i]);}int i 0;whi…...

探秘 MySQL 数据类型的艺术:性能与存储的精妙平衡

文章目录 前言&#x1f380;一、数据类型分类&#x1f380;二、整数类型&#xff08;举例 TINYINT 和 INT &#xff09;&#x1f3ab;2.1 TINYINT 和 INT 类型的定义2.1.1 TINYINT2.1.2 INT &#x1f3ab;2.2 表的操作示例2.2.1 创建包含 TINYINT 和 INT 类型的表2.2.2 插入数据…...

使用任意绘图软件自学并结合上课所学内容完成数据库原理图绘制

本次绘图采用亿图图示软件...

static、 静态导入、成员变量的初始化、单例模式、final 常量(Content)、嵌套类、局部类、抽象类、接口、Lambda、方法引用

static static 常用来修饰类的成员&#xff1a;成员变量、方法、嵌套类 成员变量 被static修饰&#xff1a;类变量、成员变量、静态字段 在程序中只占用一段固定的内存&#xff08;存储在方法区&#xff09;&#xff0c;所有对象共享可以通过实例、类访问 (一般用类名访问和修…...

基于SSM的智能养生平台管理系统源码带本地搭建教程

技术栈与架构 技术框架&#xff1a;采用SSM&#xff08;Spring Spring MVC MyBatis&#xff09;作为后端开发框架&#xff0c;结合前端技术栈layui、JSP、Bootstrap与jQuery&#xff0c;以及数据库MySQL 5.7&#xff0c;共同构建项目。 运行环境&#xff1a;项目在JDK 8环境…...

Latex中文排版字体和字号

中文排版 最近常用latex排版&#xff0c;也遇到了很多问题。这里对于主要的参考文章做一个总结和推荐。 一份不太简短的 LaTeX2ε 介绍【中文资料】ctex宏包用户手册&#xff0c;用户手册使用 命令行texdoc ctex 这两个文档都是中文的&#xff0c;而且几乎解决了我90%的排版…...

[C++ 11] 列表初始化:轻量级对象initializer_list

C发展历史 C11是C语言的第二个主要版本&#xff0c;也是自C98以来最重要的一次更新。它引入了大量的新特性&#xff0c;标准化了已有的实践&#xff0c;并极大地改进了C程序员可用的抽象能力。在2011年8月12日被ISO正式采纳之前&#xff0c;人们一直使用“C0x”这个名称&#…...

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (八):API说明(暂时完结,后续考虑将在线版mongoDB变为本地版)

本项目旨在学习如何快速使用 nodejs 开发后端api&#xff0c;并为以后开展其他项目的开启提供简易的后端模版。&#xff08;非后端工程师&#xff09; 由于文档是代码写完之后&#xff0c;为了记录项目中需要注意的技术点&#xff0c;因此文档的叙述方式并非开发顺序&#xff0…...

manictime整合两个数据库的数据

作用 老电脑崩溃了,有个1t.db&#xff0c; 新电脑有个3t.db 那么重装系统后就想整合起来用。 整合前文件大小 整合命令 .\mtdb.exe importtimelines -sdbpa ManicTimeCore-1t.db -dbpa ManicTimeCore-3t.db -tt ManicTime/ComputerUsage,ManicTime/Applications,ManicTime…...

别再混淆了!结构方程模型SEM中的反映型vs构成型指标,用PLS-PM一次讲清

结构方程模型中的反映型与构成型指标&#xff1a;理论辨析与PLS-PM实战指南 在数据分析的复杂世界里&#xff0c;结构方程模型(SEM)就像是一把瑞士军刀&#xff0c;能够同时处理测量模型和结构模型。但许多研究者在使用这把"军刀"时&#xff0c;常常忽略了一个关键细…...

(5月最新版)OpenClaw 小龙虾 Windows 一键安装与问题排查

OpenClaw&#xff08;小龙虾&#xff09;Windows 11 一键部署教程&#xff5c;2026 新版&#xff5c;零代码・免配置・解压即用 适用系统&#xff1a;Windows 11 专业版 / 家庭版 / 正式版&#xff08;全版本兼容&#xff09;当前版本&#xff1a;v2.7.1 下载地址&#xff1a;…...

Arm CoreLink GFC-200 Flash控制器架构与优化实践

1. Arm CoreLink GFC-200 Flash控制器架构解析在嵌入式系统设计中&#xff0c;非易失性存储管理是核心挑战之一。作为Arm CoreLink系列的重要成员&#xff0c;GFC-200通用Flash控制器通过创新的总线架构和分区管理机制&#xff0c;为SoC设计提供了高效的Flash存储解决方案。这款…...

Musa并行搜索工具:重塑信息检索工作流,提升多源对比效率

1. 项目概述&#xff1a;重新定义你的搜索工作流如果你和我一样&#xff0c;每天的工作都离不开在浏览器里反复横跳——为了一个技术问题&#xff0c;先在 Google 搜一遍&#xff0c;再去 Stack Overflow 看看有没有新答案&#xff0c;接着打开 ChatGPT 问问它的看法&#xff0…...

C++ 知识点22 函数模板

C 函数模板一、为什么要有函数模板&#xff1f;先看痛点&#xff1a;你要写两个交换函数&#xff0c;int 版、double 版&#xff1a;// int 交换 void swapInt(int &a, int &b) {int t a; a b; b t; } // double 交换 void swapDouble(double &a, double &b…...

Spring AI 2.0 开发Java Agent智能体 - 会话记忆(Chat Memory)

大家好&#xff0c;我是Java1234_小锋老师&#xff0c;最近更新《2027版本 Spring AI 2.0 开发Java Agent智能体 视频教程》专辑&#xff0c;感谢大家支持。本课程主要介绍和讲解Spring AI 2.0简介&#xff0c;Spring AI 2.0 HelloWorld搭建&#xff0c;Advisors — 拦截器模式…...

从Kaggle竞赛到实战:基于XGBoost的Otto多分类产品识别系统构建

1. 从Kaggle竞赛到真实业务场景的跨越 第一次接触Otto数据集是在2015年的Kaggle竞赛上&#xff0c;当时只觉得这是个典型的多分类问题。直到去年为某跨境电商平台搭建商品自动分类系统时&#xff0c;我才真正理解这个案例的实战价值——90%的参赛者只关注模型精度&#xff0c;而…...

别再只把PCA当降维工具了!用它处理三维点云,5分钟搞定地面和墙面分割

别再只把PCA当降维工具了&#xff01;用它处理三维点云&#xff0c;5分钟搞定地面和墙面分割 当我们在处理三维点云数据时&#xff0c;常常会遇到需要将地面、墙面和其他物体点进行分割的场景。传统方法可能需要复杂的算法和大量的计算资源&#xff0c;但今天我要分享的是一个…...

从入门到精通:Systrace性能分析实战指南

1. Systrace入门&#xff1a;认识Android性能分析利器 第一次打开Systrace报告时&#xff0c;我完全被那些彩色线条和条形图搞懵了。这玩意儿看起来就像地铁线路图一样复杂&#xff0c;但别担心&#xff0c;它其实是Android开发者最得力的性能分析助手。Systrace是Android SDK自…...

别再死记硬背了!用这三个等效模型,轻松搞定二极管电路分析(附典型例题)

二极管电路分析的三大等效模型实战指南 在电子工程和嵌入式开发领域&#xff0c;二极管作为基础元件却常常成为初学者的"拦路虎"。面对复杂的二极管电路&#xff0c;很多人陷入死记硬背的困境——记住各种电路的输出结果&#xff0c;却无法理解背后的分析逻辑。这种学…...