当前位置:首页 > 技术分析 > 正文内容

Qt开发教程:配置qmake(qt开发环境配置)

ruisui883个月前 (02-03)技术分析13

一、属性

qmake 有一个持久化配置系统,它允许在 qmake 中设置一次属性,并在每次调用 qmake 时查询它。

可以在 qmake 中设置一个属性:

qmake -set PROPERTY VALUE

您可以从 qmake 检索此信息,如下所示:

    qmake -query PROPERTY
    qmake -query    //列出内置属性

以下是内置属性:

  • QMAKE_SPEC:在主机构建期间解析并存储在 QMAKESPEC 变量中的主机 mkspec 的短名称
  • QMAKE_VERSION:qmake 的当前版本
  • QMAKE_XSPEC:在目标构建期间解析并存储在 QMAKESPEC 变量中的目标 mkspec 的短名称
  • QT_HOST_BINS:主机可执行文件的位置
  • QT_HOST_DATA:qmake 使用的主机可执行文件的数据位置
  • QT_HOST_PREFIX:所有主机路径的默认前缀
  • QT_INSTALL_ARCHDATA:依赖于一般架构的 Qt 数据的位置
  • QT_INSTALL_BINS:Qt 二进制文件(工具和应用程序)的位置
  • QT_INSTALL_CONFIGURATION:Qt 设置的位置。不适用于 Windows
  • QT_INSTALL_DATA:与架构无关的通用 Qt 数据的位置
  • QT_INSTALL_DOCS:文档位置
  • QT_INSTALL_EXAMPLES:示例位置
  • QT_INSTALL_HEADERS:所有头文件的位置
  • QT_INSTALL_IMPORTS:QML 1.x 扩展的位置
  • QT_INSTALL_LIBEXECS:运行时库所需的可执行文件的位置
  • QT_INSTALL_LIBS:库的位置
  • QT_INSTALL_PLUGINS:Qt 插件的位置
  • QT_INSTALL_PREFIX:所有路径的默认前缀
  • QT_INSTALL_QML:QML 2.x 扩展的位置
  • QT_INSTALL_TESTS:Qt 测试用例的位置
  • QT_INSTALL_TRANSLATIONS:Qt 字符串的翻译信息位置
  • QT_SYSROOT:目标构建环境使用的 sysroot
  • QT_VERSION:Qt 版本。可使用 $QT.<module>.version 变量来查询 Qt 模块特定的版本号

【领QT开发教程学习资料,点击下方链接莬费领取↓↓,先码住不迷路~】

点击→领取「链接」

二、QMAKESPEC

qmake 需要一个平台和编译器描述文件,其中包含许多用于生成适当 Makefile 的默认值。

标准 Qt 发行版带有许多这样的文件,位于 Qt 安装的 mkspecs 子目录中(如:D:\qt6.2\6.2.0\msvc2019_64\mkspecs)。

QMAKESPEC 环境变量可以包含以下内容:

  • 包含 qmake.conf 文件的目录的完整路径。在这种情况下,qmake 将从该目录中打开 qmake.conf 文件。如果文件不存在,qmake 将退出并报错。
  • 平台编译器组合的名称。在这种情况下,qmake 将在 Qt 编译时指定的数据路径的 mkspecs 子目录指定的目录中搜索。

注意:QMAKESPEC 路径将自动添加到 INCLUDEPATH 系统变量内容之后生成的 Makefile 中。

三、缓存文件

缓存文件是 qmake 读取的特殊文件,用于查找未在 qmake.conf 文件、项目文件或命令行中指定的设置。

当 qmake 运行时,除非指定 – nocache 参数,否则它会在当前目录的父目录中查找名为 .qmake.cache 的文件 如果。qmake 找不到这个文件,它会默默地忽略这一步处理。

如果 qmake 找到一个 .qmake.cache 文件,那么它会在处理项目文件之前先处理这个文件。

四、文件扩展名

在正常情况下,qmake 会尝试为当前平台使用适当的文件扩展名。但是,有时需要覆盖每个平台的默认选择并明确定义要使用的 qmake 的文件扩展名。这是通过重新定义某些内置变量来实现的。

例如,可以在项目文件中使用以下分配重新定义用于 moc 文件的扩展名:

 QMAKE_EXT_MOC = .mymoc

以下变量可用于重新定义 qmake 识别的常见文件扩展名:

  • QMAKE_EXT_MOC:修改放置在包含的 moc 文件上的扩展名。
  • QMAKE_EXT_UI:修改用于 Qt Designer UI 文件的扩展名(通常在 FORMS 中)。
  • QMAKE_EXT_PRL:修改放置在库依赖文件上的扩展名。
  • QMAKE_EXT_LEX:更改 Lex 文件(通常在 LEXSOURCES)中使用的后缀。
  • QMAKE_EXT_YACC:更改 Yacc 文件(通常在 YACCSOURCES)中使用的后缀。
  • QMAKE_EXT_OBJ:更改用于生成的目标文件的后缀。

以上所有都只接受第一个值,下面的代码第二行不起作用:

 QMAKE_EXT_MOC = .mymoc_1
 QMAKE_EXT_MOC = .mymoc_2

有两个变量可以接受值列表:

  • QMAKE_EXT_CPP:使 qmake 将所有带有这些后缀的文件解释为 C++ 源文件。
  • QMAKE_EXT_H:使 qmake 将所有带有这些后缀的文件解释为 C 和 C++ 头文件。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/1074.html

标签: nocache
分享给朋友:

“Qt开发教程:配置qmake(qt开发环境配置)” 的相关文章

Linux发行版Debian推出12.2及11.8版本,修复多个安全问题

IT之家 10 月 9 日消息,Debian 是最古老的 GNU / Linux 发行版之一,也是许多其他基于 Linux 的操作系统的基础,包括 Ubuntu、Kali、MX 和树莓派 OS 等,近日 Debian 推出了 12.2 和 11.8 版本,主要修复了多个安全问题。▲ 图源 Debia...

用IDEA开发如何用Git快速拉取指定分支代码?

1,准备空的文件夹,git init2,关联远程仓库,git remote add origin gitlab地址3,拉取远程分支代码,git pull origin 远程分支名再用IDEA打开项目即可...

雅马哈TMAX 560 TECH MAX 外媒深度测评

应雅马哈(Yamaha)的邀请,在葡萄牙埃斯托里尔对全新的Yamaha TMAX 560 Tech Max踏板车进行了测试,在这里TMAX 560 Tech Max售价为11649英镑。雅马哈TMAX长期以来一直站在踏板车的顶端,就声誉和知名度而言,它是当之无愧的大踏板界NO.1。2020 TMAX...

虚幻引擎5.5现已发布 手游开发、动画制作重大改进

Epic在今天发布了虚幻引擎5.5,现可通过Epic Launcher下载。此版本在动画创作、渲染、虚拟制片、移动端游戏开发和开发人员迭代工具集等方面做出了重大改进。 官方博客:虚幻引擎5.5现已发布,在动画创作、虚拟制作和移动游戏开发方面取得了显著进步,渲染、摄像机内视觉特效和开发人员迭代等领域的...

别让“跑焦”毁所有!仅需这一项设置,即可显著改善镜头对焦精度

我常常会收到一些摄影爱好者的私信,也一直在努力的帮助大家解决更多摄影中常见问题。在我收到的所有问题中。有一个问题是最麻烦的,那就是“为什么我的图像看起来模糊?”。这个问题几乎每个人都遇到过,究其原因可以说是多种多样相对复杂。起初我一直认为是对焦问题所导致,也就有了我之前所写的“后按对焦”以及“对焦模...

12种JavaScript中最常用的数组操作整理汇总

数组是最常见的数据结构之一,我们需要绝对自信地使用它。在这里,我将列出 JavaScript 中最重要的几个数组常用操作片段,包括数组长度、替换元素、去重以及许多其他内容。1、数组长度大多数人都知道可以像这样得到数组的长度:const arr = [1, 2, 3]; console.log(a...