Qt搭建MQTT编程环境
2023-12-13 06:00:08
QT 部署官方MQTT模块
在Qt Creator中,默认是没有部署Mqtt模块的,在使用QT编程之前,先把mqtt 模块部署到开发环境当中。参考博文:Qt开发技术:mqtt介绍、QtMqtt编译和开发环境搭建_长沙红胖子-CSDN博客
下载
Qt官方在github上提供了源代码,地址:https://github.com/qt/qtmqtt.选择对应的版本下载
-
编译源码
打开源码文件,双击.pro打开工程文件,选择release编译。
编译这个源码需要安装perl,否则会报错:perl 不是内部或外部命令,也不是可运行的程序。
perl下载地址:https://www.perl.org/get.html
安装完Perl后会自动写入环境变量, 这时候再次编译(Release模式)QtMqtt源码,编译完成后得到以下文件
?
编译遇到的错误:
1、编译过程会出现没有没有找到qtmqtt相关头文件的情况,这是没有找到qtmqtt的相关头文件:
/home/macian/Project/mqtt/qtmqtt-5.12.7/src/mqtt/qmqttauthenticationproperties.h:33: error: QtMqtt/qmqttglobal.h: No such file or directory
2、在使用arm-hisiv300-linux-gcc交叉编译qt5 ,qmake安装目录的include中创建QtMqtt文件夹
sudo mkdir QtMqtt
3、把源码中的.h头文件拷贝到文件夹中
sudo cp /home/macian/Project/mqtt/qtmqtt-5.12.7/src/mqtt/*.h QtMqtt/
4、ls查看拷贝结果如下
如果使用版本不一致,可能由于版本过高,或者与ubuntu版本不兼容原因可能会出现以下错误。
- 错误一:
重新构建,仍然报错缺少 QtMqtt/QMqttClient等头文件,将报错的工程头文件替换 - 解决方法:
将
#include <QtMqtt/QMqttClient>
改成
#include <QtMqtt/qmqttclient.h>
将
#include <QtMqtt/QMqttSubscription>
改成
#include <QtMqtt/qmqttsubscription.h>
将
#include <QMqttTopicName>
改成
#include <QtMqtt/qmqtttopicname.h>
将
#include <QtMqtt/QMqttMessage>
改成
#include <QtMqtt/qmqttmessage.h>
错误参考链接---树莓派上用QT搭建MQTT环境教程_51CTO博客_树莓派mqtt
编译后工程搭建参考---MQTT设计与实现_mqtt实现-CSDN博客
文章来源:https://blog.csdn.net/qq_33301482/article/details/134945107
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!