Linux/ARM下QT MQTT库的编译安装

  • 个人主页:风间琉璃
  • 版权: 本文由【风间琉璃】原创、在CSDN首发、需要转载请联系博主
  • 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)订阅专栏

 

目录

一、 Linux 环境下编译安装

二、 ARM Linux 环境下安装


一、 Linux 环境下编译安装

Linux 版本: UBuntu 18.04 LTS
QT 版本: 5.12.9
MQTT 版本: 5.12.9

1.下载 MQTT
打开 https://github.com/qt/qtmqtt 选择与 QT 对应的 MQTT 版本(使用的是 5.12.9),下载源码压缩包,如图 1 所示
Linux/ARM下QT MQTT库的编译安装_第1张图片

2.将解压缩后的文件拷贝到 UBuntu 工程目录内

3.在刚解压的目录内新建一个 bulid 文件夹,进入该文件夹,mkdir build && cd build

4.拷贝头文件

将源码解压目录下 src/mqtt 内所有的头文件,复制到 QT 安装目录下gcc_64/include/QtMqtt 内
Linux/ARM下QT MQTT库的编译安装_第2张图片

Linux/ARM下QT MQTT库的编译安装_第3张图片 

5.编译并安装 MQTT

5.1指定 QT 安装目录

QT_INSTALL_DIR=/home/..../Qt5.12.9/5.12.9(Qt的安装目录)

5.2指定 qmake 目录
QT_QMAKE_DIR=$QT_INSTALL_DIR/gcc_64/bin/

5.3编译工程

$QT_QMAKE_DIR/qmake -r .. (注意有两个点)
make
sudo make install
Linux/ARM下QT MQTT库的编译安装_第4张图片

Linux/ARM下QT MQTT库的编译安装_第5张图片 

 6.进入 QT 安装目录下 gcc_64/include/QtMqtt

新建文件 QMqttClient,打开文件添加#include "qmqttclient.h"
新建文件 QMqttSubscription,打开文件添加#include “qmqttsubscription.h”
新建文件 QMqttMessage,打开文件添加#include "qmqttmessage.h"
新建文件 QMqttTopicName,打开文件添加#include " qmqtttopicname.h"
Linux/ARM下QT MQTT库的编译安装_第6张图片

7.运行示例程序
运行 QT,打开源码下的 examples 工程,运行该工程。

Linux/ARM下QT MQTT库的编译安装_第7张图片
 

二、 ARM Linux 环境下安装

GCC 版本: 4.9.3
交叉编译工具: gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf
Qmake 版本: 3.1
QT 版本: 5.12.9

在 ARM Linux 下对 MQTT 进行编译,首先需要有交叉编译工具(交叉编译工具最好和所使用的 Linux 内核编译版本、 QT arm 的编译版本一致)

1.解压缩交叉编译工具到相应目录下


2.使用 tar 命令进行解压


3.修改/etc/profile 文件,添加交叉编译工具路径


4.使用 source /etc/profile 使刚才的改动生效


5.使用 arm-linux-gnueabihf-gcc -v 查看是否生效。(若是已经有交叉编译环境可以直接跳过前5步)


6.对 QT 源码进行编译(QT 库裁剪),得到对应的库文件等(若原来已经有Qt的交叉编译库,可以不用操作Qt的交叉编译)


7.在解压的目录内新建一个目录 build-arm 并进入该目录


8.QT_QMAKE_AND_DIR=/opt/Qt5/compiled/Qt5.12.9_arm/bin

此目录是 qmake 所在的目录,我把 Qt 源码编译后的文件放在/opt/Qt5/compiled/Qt5.12.9_arm 内

9.将 mqtt 解压缩后的头文件,放入到 Qt 交叉编译目录的 include 文件夹内和上面第 6 条添操作一样,QtMqtt添加如下内容:

新建文件 QMqttClient,打开文件添加#include "qmqttclient.h"
新建文件 QMqttSubscription,打开文件添加#include “qmqttsubscription.h”
新建文件 QMqttMessage,打开文件添加#include "qmqttmessage.h"
新建文件 QMqttTopicName,打开文件添加#include " qmqtttopicname.h"

Linux/ARM下QT MQTT库的编译安装_第8张图片

10.和上面一样编译、安装mqtt

$QT_QMAKE_AND_DIR/qmake -r ..
make
sudo make install

11.将编译后的库文件拷贝到 Arm linux 目标板中对应的 Qt 库文件夹内
libQt5Mqtt.la
libQt5Mqtt.prl

libQt5Mqtt.so
libQt5Mqtt.so.5
libQt5Mqtt.so.5.12
libQt5Mqtt.so.5.12.9

12.运行 Qt,打开源文件夹下的 examples 工程,使用 arm 编译该工程,将生成的文件拷贝到 Arm linux 板中运行。
 

安装步骤参考:
http://www.diy.ind.in/linux/31-install-mqtt-module-in-qt

结束语
感谢你观看我的文章呐~本次航班到这里就结束啦

希望本篇文章有对你带来帮助 ,有学习到一点知识~

躲起来的星星也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,博主要一下你们的三连呀(点赞、评论、收藏),不要钱的还是可以搞一搞的嘛~

不知道评论啥的,即使扣个666也是对博主的鼓舞吖 感谢

你可能感兴趣的:(QT,linux,服务器,QT,c++)