栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

如何为Qt开发环境创建/添加一个新模块【01】

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何为Qt开发环境创建/添加一个新模块【01】

如何为Qt开发环境创建/添加一个新模块【01】

注:
(1)本文实验环境为Windows平台,Linux或者其他平台分析方法和思路类似。
(2)PC操作系统版本:Windows 10
(3)Qt 版本:5.15.2


一、分析Qt官方模块和工具

​ Qt框架由许多模块组成,这些模块在开发过程中,由QT变量导入。那么QT变量导入的过程是怎样进行的呢?本节将分析这个问题,以便后续进行Qt模块的添加。

​ 下图是Qt版本的目录结构,这里以MinGW32为例:

​ (1)bin目录包含一些二进制和库文件等。

​ (2)include目录包含头文件。

​ (3)lib 包含在编译构建过程中需要使用到的库。

​ (4)mkspecs目录包含许多构建工程文件。

​ 在bin目录下,主要包含xxx.exe和xxx.dll文件。

​ 在include目录下,以模块来划分目录结构,如下图所示:

​这里以xml模块为例,那么xml对应的模块目录是【QtXml】。该目录下的内容如下图所示:

 如上图所示,可见目录中包含了关于xml的重要文件和头文件。


​ 在进行项目开发时,当通过QT += xml后,解析器将到【QtXml】目录下找相关的头文件,所以当使用#include 时,才能找到对应的文件,从而解析到相关的头文件。如下图所示:

在lib目录下,主要包含xxx.a、xxx.prl、xxx.dll.debug等文件。如下图所示:

接下来,就是一个很重要的目录:【mkspcs】,该目录下有一个modules目录,当使用QT变量添加模块后,解析器是如何找到对应的目录的呢,主要还是与modules目录下的文件有关,如图下图所示:


这里以xml模块为例,与xml模块相关的描述文件是:qt_lib_xml.pri 、qt_lib_xml_private.pri。显然,以后缀.pri描述的文件都是用于进行模块描述的,如下图所示。文件qt_lib_xml.pri文件主要用于模块描述。

​ 其中,qt_lib_xml.pri文件中内容指明了与xml模块相关的参数:模块名称、库路径、头文件路径、二进制路径、模块名等。

​ 故解析器通过解析该文件中的参数字段,即可获取到关于xml模块的参数信息。

二、总结

​ 本文以Windows为平台,以具体的xml模块为例,分析了Qt的模块机制。主要分析了Qt的模块是如何进行解析和加载的。在下文中,将分享如何创建自定义的模块,并添加到Qt目录结构中。

​ 参考链接:

​ https://wiki.qt.io/Creating_a_new_module_or_tool_for_Qt


本文未完待续!!!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/302793.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号