最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

QT安裝MQTT庫的實現(xiàn)步驟

 更新時間:2026年01月05日 09:27:04   作者:小汪同學(xué)?。?!  
本文分別介紹了在Windows、Linux、ARM板卡下給QT安裝MQTT庫的步驟,具有一定的參考價值,感興趣的可以了解一下

前言

  • 本文分別介紹了在Windows、Linux(Ubuntu系統(tǒng))、ARM板卡(瑞芯微RK3576)下給QT安裝MQTT庫的步驟。
  • 操作(二、三、四)只適用于QT5安裝MQTT庫;操作五用于QT6安裝MQTT庫。
  • qmake、cmake、make(注意Windows下make為mingw32-make)使用時候所依賴的文件:
指令所需文件說明
qmake.pro文件查看源碼下是否有.pro文件,有.pro文件才能使用qmake(使用方法參看:操作二、三、四)
cmakeCMakeLists.txt文件查看源碼下是否有CMakeLists.txt文件,有CMakeLists.txt文件才能使用cmake(使用方法查看:操作六)
makeMakefile文件一般執(zhí)行完qmake或cmake后會生成Makefile文件,此時執(zhí)行make即可

QT5的MQTT庫使用的是qmake,QT6的MQTT庫已經(jīng)都在使用cmake。

一. 下載QT官方的MQTT源碼

代碼地址:https://gitcode.com/gh_mirrors/qt/qtmqtt/tree/dev

根據(jù)電腦上的QT版本下載MQTT的版本

二. Windows下QT5安裝MQTT庫

2.1 方法1(使用Qt qcreator編譯,然后自行移植)

1.解壓源碼,然把MQTT源碼\src\mqtt文件夾下的.h文件打包到一個QtMqtt的文件下、并把文件夾移動到QT安裝目錄的\mingw73_64\include文件夾里。

2.使用Qt qcreator打開 MQTT源碼下qtmqtt.pro工程文件,并進(jìn)行編譯

3.源碼編譯完成后,將生成的動態(tài)庫和靜態(tài)庫復(fù)制到QT安裝目錄下對應(yīng)存放庫的路徑下

編譯完成會生成一個build-qtmqtt-Desktop_Qt_5_14_2_MinGW_64_bit-Debug的文件夾,主要復(fù)制該文件夾下bin、include、lib、mkspecs文件夾的文件

  • bin :主要存放動態(tài)庫
  • include :主要存放頭文件
  • lib :主要存放靜態(tài)庫
  • mkspecs :構(gòu)建規(guī)范文件(有這個文件可以直接在QT的.pro文件中添加mqtt模塊 如:QT += core gui network mqtt)

把bin文件夾下的文件復(fù)制到QT安裝目錄下的mingw73_64\bin文件夾

  • 把include 文件夾下的QtMqtt文件夾復(fù)制到QT安裝目錄下的mingw73_64\include 文件夾,之前復(fù)制的.h文件不要刪

  • 把lib 文件夾下的文件復(fù)制到QT安裝目錄下的mingw73_64\lib 文件夾

    lib\cmake文件夾下的QtMqtt文件夾復(fù)制到QT安裝目錄下的mingw73_64\lib\cmake文件夾

    lib\pkgconfig文件夾下的文件復(fù)制到QT安裝目錄下的mingw73_64\lib\pkgconfig文件夾

    lib文件夾下的libQt5Mqtt.、Qt5Mqtt.prl文件復(fù)制到QT安裝目錄下的mingw73_64\lib文件夾

  • 把mkspecs\modules-inst文件夾下的文件復(fù)制到QT安裝目錄下的mingw73_64\mkspecs\modules文件夾

4.打開并運(yùn)行MQTT自帶的例子(以simpleclient工程為例;工程路徑:MQTT源碼下examples\mqtt\simpleclient文件夾)

  • 在編譯工程時候會報錯,此時修改一下頭文件即可

#include <QMqttClient>
#include <QtMqtt/QMqttClient>
//將上面兩個頭文件修改為下面的頭文件
#include <QtMqtt/qmqttclient.h>

2.2 方法2(使用命令行編譯安裝)

1.先按照2.1 的步驟1把.h文件移動到QT安裝目錄的\5.14.2\mingw73_64\include文件夾里

2.打開MinGW的控制臺

3.進(jìn)入到MQTT源碼的目錄下,然后依次執(zhí)行qmake、mingw32-make、mingw32-make install 指令

qmake、mingw32-make、mingw32-make install 指令的功能

  • qmake :構(gòu)建生成Makefile文件
  • mingw32-make :根據(jù)Makefile文件編譯源代碼,生成靜態(tài)、動態(tài)庫等目標(biāo)文件
  • mingw32-make install :將編譯好的靜態(tài)、動態(tài)庫等目標(biāo)文件復(fù)制到系統(tǒng)的標(biāo)準(zhǔn)安裝目錄中,使其可以被系統(tǒng)使用

4.完成上面操作后,MQTT庫此時已經(jīng)被安裝在QT的安裝目錄下(即完成了2.1 的步驟3的復(fù)制工作),然后按照 2.1 的步驟4進(jìn)行MQTT自帶例子的測試

三. Linux下QT5安裝MQTT庫

3.1 方法1(使用Qt qcreator編譯,然后自行移植)

1.解壓源碼,然把MQTT源碼\src\mqtt文件夾下的.h文件打包到一個QtMqtt的文件下、并把文件夾移動到QT安裝目錄的\gcc_64\include文件夾.

2.使用Qt qcreator打開 MQTT源碼下qtmqtt.pro工程文件,并進(jìn)行編譯

3.源碼編譯完成后,將生成的動態(tài)庫和靜態(tài)庫復(fù)制到QT安裝目錄下對應(yīng)存放庫的路徑下

編譯完成會生成一個build-qtmqtt-Desktop_Qt_5_14_2_GCC_64bit-Debug的文件夾,主要復(fù)制該文件夾下bin、include、lib、mkspecs文件夾的文件

  • Linux系統(tǒng)下編譯后,bin是空的,所以不用復(fù)制
  • 把include 文件夾下的QtMqtt文件夾復(fù)制到QT安裝目錄下的\gcc_64\include 文件夾,之前復(fù)制的.h文件不要刪
  • 把lib 文件夾下的文件復(fù)制到QT安裝目錄下的\gcc_64\lib 文件夾

  • 把mkspecs\modules-inst文件夾下的文件復(fù)制到QT安裝目錄下的\gcc_64\mkspecs\modules文件夾

4.按照 2.1 的步驟4進(jìn)行MQTT自帶例子的測試

3.2 方法2(使用命令行編譯安裝)

1.先按照3.1 的步驟1把.h文件移動到QT安裝目錄的\gcc_64\include文件夾里

2.進(jìn)入到MQTT源碼的目錄下,然后依次執(zhí)行qmake、make、make install 指令

3.完成上面操作后,MQTT庫此時已經(jīng)被安裝在QT的安裝目錄下(即完成了3.1 的步驟3的復(fù)制工作),然后按照 2.1 的步驟4進(jìn)行MQTT自帶例子的測試

四. ARM板卡(RK3576)下QT5安裝MQTT庫

4.1 安裝QT5的基本庫

1.QT的安裝

  • qtbase5-dev :包含qt最基礎(chǔ)的類庫
  • qtbase5-dev-tools :開發(fā)qt時所用到的工具
  • qt5-qmake :安裝qmake

一般在安裝qtbase5-dev庫時候會自動安裝qtbase5-dev-tools 、qt5-qmake,為防止意外也再安裝一下這兩個庫。

apt-get install qtbase5-dev qtbase5-dev-tools qt5-qmake

2.QT的安裝路徑

QT安裝成功后,在開發(fā)板上QT的安裝路徑會不一樣,下面是QT主要的文件安裝路徑:

  • bin路徑:/usr/lib/aarch64-linux-gnu/qt5/bin
  • lib路徑:/usr/lib/aarch64-linux-gnu
  • include路徑:/usr/include/aarch64-linux-gnu/qt5

4.2 安裝QT5的MQTT庫

建議安裝5.14版本以上的MQTT庫,我安裝的是5.14.2(低版本的可能會有某些函數(shù)不能使用)。

這里使用的是直接編譯安裝的方法,不用使用移植的方法,移植的方法在這里比較麻煩。

1.先按照3.1 的步驟1把.h文件移動到QT安裝目錄的/usr/include/aarch64-linux-gnu/qt5文件夾里

2.進(jìn)入到MQTT源碼的目錄下,然后依次執(zhí)行下面指令(執(zhí)行過程中會有警告,忽略即可)。

# 生成編譯環(huán)境
qmake
# 編譯
make
# 安裝
sudo make install

3.MQTT庫安裝成功后,會在/usr/lib/aarch64-linux-gnu下生成庫文件。

4.完成上面操作后,MQTT庫此時已經(jīng)被安裝在QT的安裝目錄下,然后按照 2.1 的步驟4進(jìn)行MQTT自帶例子的測試

五. Linux下QT6安裝MQTT庫

1.在linux下完成QT6的安裝(本操作使用的是:QT6.8.3)。

  • 安裝QT6的時候記得安裝QT6自帶的cmake,Linux系統(tǒng)自帶的cmake可能版本太低,導(dǎo)致編譯不成功。

2.請按照操作一,下載QT6相應(yīng)版本的MQTT源碼。

3.把源碼拷貝到Linux下,進(jìn)行下面的操作

# 1.進(jìn)入mqtt源碼目錄
cd qtmqtt-6.8.3/
?
# 2.創(chuàng)建build目錄
mkdir build
?
# 3.進(jìn)入build目錄
cd build
?
# 4.設(shè)置環(huán)境變量,告訴 CMake 在哪里查找 Qt6(下面的路徑根據(jù)實際情況修改)
export CMAKE_PREFIX_PATH=/home/topeet/Qt/6.8.3/gcc_64/
?
# 5.使用cmake生成編譯環(huán)境(使用QT6自帶的cmake,Linux系統(tǒng)自帶的cmake可能版本太低,可能導(dǎo)致編譯不成功)
/home/topeet/Qt/Tools/CMake/bin/cmake ..
?
# 6.使用make進(jìn)行編譯
make
?
# 7.使用 make install進(jìn)行自動安裝(安裝完成后到QT6安裝目錄下查找MQTT庫,若沒找到MQTT庫,請執(zhí)行下面的復(fù)制步驟)
make install

4.若make install 安裝不能用,請然后按照3.1的步驟3進(jìn)行復(fù)制即可,需要復(fù)制的文件都在build目錄下。

5.完成上面操作后,MQTT庫此時已經(jīng)被安裝在QT的安裝目錄下,按照 2.1 的步驟4進(jìn)行MQTT自帶例子的測試

到此這篇關(guān)于QT安裝MQTT庫的實現(xiàn)步驟的文章就介紹到這了,更多相關(guān)QT安裝MQTT 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • OpenCV圖像特征提取之Shi-Tomasi角點檢測算法詳解

    OpenCV圖像特征提取之Shi-Tomasi角點檢測算法詳解

    Harris角點檢測算法就是對角點響應(yīng)函數(shù)R進(jìn)行閾值處理,Shi-Tomasi原理幾乎和Harris一樣的,只不過最后計算角點響應(yīng)的公式發(fā)生了變化。本文將和大家詳細(xì)說說Shi-Tomasi角點檢測算法的原理與實現(xiàn),需要的可以參考一下
    2022-09-09
  • C++實現(xiàn)判斷字符串是否回文實例解析

    C++實現(xiàn)判斷字符串是否回文實例解析

    這篇文章主要介紹了C++實現(xiàn)判斷字符串是否回文,其中采用了數(shù)據(jù)結(jié)構(gòu)中棧以及過濾字符等技術(shù),,需要的朋友可以參考下
    2014-07-07
  • C語言文件隨機(jī)讀寫的完全指南

    C語言文件隨機(jī)讀寫的完全指南

    本文詳細(xì)介紹了C語言中實現(xiàn)文件隨機(jī)讀寫的關(guān)鍵函數(shù)(fseek, ftell, rewind)及其應(yīng)用,通過移動文件光標(biāo),隨機(jī)讀寫允許直接訪問文件的任意位置,適用于數(shù)據(jù)庫、日志文件等場景,需要的朋友可以參考下
    2025-10-10
  • C++中用哈希表封裝myunordered_set和myunordered_map方法詳解

    C++中用哈希表封裝myunordered_set和myunordered_map方法詳解

    這篇文章主要介紹了C++中用哈希表封裝myunordered_set和myunordered_map方法,封裝通用哈希表底層,快速實現(xiàn)myunordered_set和myunordered_map,掌握STL無序容器核心設(shè)計,需要的朋友可以參考下
    2026-05-05
  • 從頭學(xué)習(xí)C語言之字符串處理函數(shù)

    從頭學(xué)習(xí)C語言之字符串處理函數(shù)

    這篇文章主要為大家詳細(xì)介紹了C語言之字符串處理函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,?希望能夠給你帶來幫助
    2022-01-01
  • C++ 11 std::function和std::bind使用詳解

    C++ 11 std::function和std::bind使用詳解

    這篇文章主要介紹了C++ 11 std::function和std::bind使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • C++和java設(shè)計模式之單例模式

    C++和java設(shè)計模式之單例模式

    這篇文章主要為大家詳細(xì)介紹了C++和java設(shè)計模式之單例模式的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • C++如何獲取系統(tǒng)信息 C++獲取IP地址、硬件信息等

    C++如何獲取系統(tǒng)信息 C++獲取IP地址、硬件信息等

    這篇文章主要為大家詳細(xì)介紹了C++如何獲取系統(tǒng)信,C++獲取IP地址、硬件信息等,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • C++中的std::async()詳解

    C++中的std::async()詳解

    這篇文章主要給大家介紹了關(guān)于C++中std::async()的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • c++中處理相關(guān)數(shù)學(xué)函數(shù)

    c++中處理相關(guān)數(shù)學(xué)函數(shù)

    數(shù)學(xué)庫函數(shù)聲明在 math.h 中,主要有:
    2013-04-04

最新評論

平凉市| 青岛市| 永登县| 武隆县| 万山特区| 当涂县| 华宁县| 正定县| 泗阳县| 鹰潭市| 长沙县| 璧山县| 古浪县| 灵武市| 沧州市| 哈巴河县| 宣武区| 镇坪县| 历史| 石柱| 昂仁县| 京山县| 东宁县| 乐亭县| 冕宁县| 长岛县| 方正县| 威信县| 桐庐县| 新田县| 晋城| 东平县| 博乐市| 固原市| 卓资县| 沐川县| 乐至县| 松桃| 阜城县| 怀宁县| 岳西县|