一杯清酒邀明月
天下本无事,庸人扰之而烦耳。

首先 QT的版本和mqtt包的版本要一致(我这里QT和mqtt的版本都是5.14.2)

QT安装包(5.14.2)下载地址:Index of /archive/qt/5.14

mqtt包的一个连接(可以选择相应的版本) GitHub - qt/qtmqtt at 5.14.2

将mqtt包解压后,mqtt.pro使用QTCREATOR打开,用release编译。

编译中可能会出错: “QtMqtt/qmqttglobal.h”: No such file or directory

将mqtt包里面src源码文件夹下所有头文件复制一份到 QT安装包目录下include/mqtt文件夹即可解决。

之后构建成功后有以下步骤:

1.将mqtt包 构件目录里面的 lib中的文件全部复制到对应QT编译器的lib文件夹中

 2.将mqtt包 构件目录里面的bin文件夹下的文件 复制到对应QT编译器的bin文件夹中

  3.将mqtt包 构件目录里面的mkspecs文件夹下的modules或者modules-inst 文件夹下的文件复制到QT编译器对应的目录下

  4.将mqtt包里面的 examples\mqtt\simpleclient文件夹复制一份到工程目录(即复制一份来实验),找开后,添加mqtt模块。将pro文件里面东西改成这样。

 再将mainwindow.h头文件改成这样然后就不会报错了

 然后点击运行 就会出现一个界面了

官方提供了 test.mosquitto.org 和 broker.hivemq.com 两个测试地址),也可以使用自己的地址。下面进行一些测试:

State Change0 表示等待中

State Change2 表示已连接上。

5.进行我自己的一个QT项目进行测试

双击工程里面的.pro文件打开工程 点击configure project

 点击构建后报出这个错误

 原因是这个路径有错  改正方法 将QT安装包里面的mingw73_64文件夹下面的lib文件夹(当然也可以是其它的  如mingw73_32文件夹) 复制到工程里面(lib文件夹)   然后根据存放的位置,复制这个文件夹(lib文件夹)的路径。

在这个QT的.pro文件下面的这个语句 LIBS += H:\MqttTest\lib\lib*.a 将这个错误的路径 改成这个文件夹的路径 (LIBS += D:\QTcode\led\MqttTest1\lib\lib*.a) (我的路径) 然后再次构件 我这里选的是64位的 然后构件选的是release 后面直接运行就出来了

 都成功了嘛!!!

posted on 2023-08-10 14:44  一杯清酒邀明月  阅读(868)  评论(0编辑  收藏  举报