Qt导入模块(charts、mqtt)

开发环境:windows、Qt5.14.2

在导入项目编译时发生如下报错:

:-1: error: Project ERROR: Unknown module(s) in QT: charts mqtt

网上搜索后发现是Qt缺少Qt Charts和Qt Mqtt这两个模块导致的。

一、导入charts模块

网上的资料大多都是说通过MaintenanceTool.exe来导入,但是运行后我这只显示已安装的模块,无法添加新的模块,折腾一番无果后,选择了重装Qt然后勾选上Qt Charts模块

关于只显示已安装模块的问题,参考这篇博客,猜测是因为临时资料档案库所用的镜像资源的问题,后来参考这篇博客,能显示到未安装的模块了

QT的MaintenanceTool.exe进行组件添加、更新、移除(QtCharts)-优快云博客

首先进入:Index of /qt/online/qtsdkrepository/windows_x86/desktop/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

找到对应自己Qt版本的路径(比如我的是5.14.2),然后在里面找到自己缺少的组件,把URL添加到临时资料档案库就可以显示未添加的模块了

Index of /qt/online/qtsdkrepository/windows_x86/desktop/qt5_5142/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

Index of /qt/online/qtsdkrepository/windows_x86/desktop/qt5_5142_src_doc_examples/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
Index of /qt/online/qtsdkrepository/windows_x86/desktop/qt5_5142_wasm/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

能看到未安装的模块了

二、导入Mqtt模块

Mqtt不是QtCreator里的模块,需要另外添加

1、在源码库上找到对应自己qt版本的mqtt模块下载

https://github.com/qt/qtmqtt/

解压后的内容如下,然后通过qt打开该工程

2、编译qtmqtt模块

取消勾选影子构建,Make arguents设置为install(会将mqtt模块复制到qt安装目录)

编译出现以下报错:

G:\qtmqtt-mvsc\qtmqtt-5.14.2\qtmqtt-5.14.2\src\mqtt\qmqttauthenticationproperties.h:33: error: QtMqtt/qmqttglobal.h: No such file or directory
 #include <QtMqtt/qmqttglobal.h>
          ^~~~~~~~~~~~~~~~~~~~~~

主要原因是编译器是按照在Qt安装目录下搜索的,但我们文件是我们自己随意放的目录下的 src\mqtt 路径下。解决方案:

在qt安装目录下include下创建QtMqtt文件夹,例如

D:\Qt5.14\5.14.2\msvc2017_64\include\QtMqtt

将mqtt模块文件src/mqtt下所有.h头文件添加到我们创建的QtMqtt文件夹。

这样mqtt模块就会编译成功,并且自动添加到qt中,最后正确运行需要mqtt的项目

参考资料:

Qt以编译方式安装子模块(submodules),以qmqtt模块安装为例_qt submodules-优快云博客

fatal error: QtMqtt/qmqttglobal.h: No such file or directory_qmqttglobal.h: no such file or directory.-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值