Qt5.9编译MQTT错误解决办法

来源:互联网 发布:行知实践园自己感受 编辑:程序博客网 时间:2024/06/05 19:42
本文主要总结Qt5.9在编译MQTT3.1时,遇到的问题和对应的解决办法。
一、我用上述的编译环境构建时,出现了如下错误:
D:\1Project\Qt5project\qmqtt-master\src\mqtt\qmqtt_websocketiodevice_p.h:-1: Note: No relevant classes found. No output generated.

 


二、解决办法

2.1双击错误提示,将页面中的将#include <QWebSocket>注释调用,用#include <QtWebSockets/QtWebSockets>代替,如下图所示。



 

2.2双击qmqtt/src/mqtt节点下的mqtt.pro工程,用QT += websockets代替QMQTT_WEBSOCKETS: QT += websockets,如下图所示:



2.3删除生产的build-qmqtt-Desktop_Qt_5_9_3_MinGW_32bit-Debug文件,如下图所示:



2.4重新构建后,没有任何的错误和警告,同时生成了一个新的build-qmqtt-Desktop_Qt_5_9_3_MinGW_32bit-Debug文件,改文件就是我们需要的。


三、解决问题方法的思路
其实这个错误主要是由于#ifdef QT_WEBSOCKETS_LIB没有正确调用导致,因为版本不同,所以调用WEBSOCKETS文件的调用方式不一样。要想知道在自己的Qt版本中,WEBSOCKETS文件是如何调用的,可以用Qt的帮助功能,如下所示:在Qt主页的左下角,有一个【帮助】模块,点击【帮助】模块后,在【Look for】搜索里面,输入WEBSOCKETS,在搜索的结果中,选择第一个Qt WbeSockets,则弹出如下画面。通过下图的函数调用讲解,可以将上述遇到的WEBSOCKETS调用错误问题解决。



原创粉丝点击