Qt搭建MQTT編程環境
介紹
Qt在5,10版本開始支持mqtt,但是也沒有集成到安裝包裏面,需要自己下載編譯。
這裏使用的qt開發版本爲Qt5.9.0
下載mqtt
編譯mqtt(注意:使用release編譯)
用QTCreator打開最外層的.pro,選擇構建會發現提示找不到頭文件<QtMqtt/qmqttglobal.h>
所以我們在QT根文件夾下新建QtMqtt,把src\mqtt 的.h文件複製到裏面。
再次編譯即可通過。有的時候不通過,看一下自己的版本和編譯器版本是不是不兼容,或者輸出文件夾有問題。
部署mqtt模塊到qt
將qtmqtt/src/mqtt拷貝到Qt5.9.0/5.9.0/msvc2017_64/include下
庫文件(lib)
將mqtt編譯出來的lib目錄下的2個dll和2個prl拷貝到Qt5.9.3/5.9.3/msvc2017_64/lib
動態庫文件/運行庫文件(lib)
將mqtt編譯出來的bin目錄下的2個dll拷貝到Qt5.9.3/5.9.3/mingw53_32/bin
其實bin下的2個dll其實與lib下的2個dll是一模一樣的
模塊配置文件
將mqtt編譯出來的mkspecs\modules下的pri文件拷貝到Qt5.9.3/5.9.3/mingw53_32/mkspecs/modules
以上便完成了配置。
測試
本文是在VS2017下進行測試的
主要通過以下幾個函數進行
m_client->setUsername();
m_client->setPort()
m_client->setUsername();
m_client->setPassword();
m_client->publish()
m_client->subscribe()