ubuntu下Qt5自动编译配置QtMqtt环境(10)

### 文章目录

  • [@[toc]](#文章目录 @[toc] 1、概述 2、下载QtMqtt源码 3、编译 4、验证 5、参考 6、视频)
  • [1、概述](#文章目录 @[toc] 1、概述 2、下载QtMqtt源码 3、编译 4、验证 5、参考 6、视频)
  • [2、下载QtMqtt源码](#文章目录 @[toc] 1、概述 2、下载QtMqtt源码 3、编译 4、验证 5、参考 6、视频)
  • [3、编译](#文章目录 @[toc] 1、概述 2、下载QtMqtt源码 3、编译 4、验证 5、参考 6、视频)
  • [4、验证](#文章目录 @[toc] 1、概述 2、下载QtMqtt源码 3、编译 4、验证 5、参考 6、视频)
  • [5、参考](#文章目录 @[toc] 1、概述 2、下载QtMqtt源码 3、编译 4、验证 5、参考 6、视频)
  • [6、视频](#文章目录 @[toc] 1、概述 2、下载QtMqtt源码 3、编译 4、验证 5、参考 6、视频)
更多精彩内容
👉内容导航 👈
👉Qt网络编程 👈

1、概述

  • Qt默认是不包含mqtt库的,如果需要使用到mqtt库就只能自己编译配置;

  • 网络所有的QtMqtt配置的文章都是编译完成手动复制,非常麻烦,对新手也非常不友好吗,容易漏了一些步骤;

  • 本文中主要说明如何自动编译配置 QtMqtt,无需手动拷贝 、生成帮助手册
    注意: 编译前需要安装sudo apt install perl,如果没有perl则编译后生成的头文件都是带.h后缀的。

演示环境:

环境 版本
相同 ubuntu22.04
Qt 5.14.2
QtMqtt 5.14.2

2、下载QtMqtt源码

  • 命令行下载:下载完成后选择QtMqtt版本,与Qt版本相同或者相近;
shell 复制代码
git clone https://github.com/qt/qtmqtt.git
git clone http://code.qt.io/qt/qtmqtt.git
git clone https://code.qt.io/qt/qtmqtt.git

git tag   # 查看分支
git checkout 5.14.2  # 切换分支
  • 浏览器下载:

3、编译

  • 使用qtcreator打开qtmqtt.pro(qtcreator如果不是使用sudo权限运行,则下面的2、3步需要自己打开终端运行命令行)
  • 添加编译配置;
    • 选择【项目】【构建】【添加构建步骤】【make】;
    • 第一个:在make参数 项添加docs,用于生成帮助手册;
    • 第二个:在make参数 项添加install_docs,用于自动安装帮助手册;(需要管理员权限)
    • 第三个:在make参数 项添加install,用于自动安装编译好的qtmqtt;(需要管理员权限)
  • 编译报错:是因为使用make install_docs安装没有权限
shell 复制代码
19:57:10: 正在启动 "/usr/bin/make" install_docs -j16

cd src/ && ( test -e Makefile || /opt/Qt5.14.2/5.14.2/gcc_64/bin/qmake -o Makefile /home/mhf/qtmqtt/src/src.pro -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug ) && /usr/bin/make -f Makefile install_docs
make[1]: Entering directory '/home/mhf/qtmqtt/build/gcc64-Debug/src'
cd mqtt/ && ( test -e Makefile || /opt/Qt5.14.2/5.14.2/gcc_64/bin/qmake -o Makefile /home/mhf/qtmqtt/src/mqtt/mqtt.pro -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug ) && /usr/bin/make -f Makefile install_docs
make[2]: Entering directory '/home/mhf/qtmqtt/build/gcc64-Debug/src/mqtt'
/opt/Qt5.14.2/5.14.2/gcc_64/bin/qmake -install qinstall /home/mhf/qtmqtt/build/gcc64-Debug/doc/qtmqtt /opt/Qt5.14.2/Docs/Qt-5.14.2/qtmqtt
/opt/Qt5.14.2/5.14.2/gcc_64/bin/qmake -install qinstall /home/mhf/qtmqtt/build/gcc64-Debug/doc/qtmqtt.qch /opt/Qt5.14.2/Docs/Qt-5.14.2/qtmqtt.qch
Error copying /home/mhf/qtmqtt/build/gcc64-Debug/doc/qtmqtt.qch to /opt/Qt5.14.2/Docs/Qt-5.14.2/qtmqtt.qch: Destination file exists
Error copying /home/mhf/qtmqtt/build/gcc64-Debug/doc/qtmqtt/examples-manifest.xml to /opt/Qt5.14.2/Docs/Qt-5.14.2/qtmqtt/examples-manifest.xml: Destination file exists
make[2]: *** [Makefile:2947: install_inst_qch_docs] Error 3
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/home/mhf/qtmqtt/build/gcc64-Debug/src/mqtt'
make[2]: *** [Makefile:2938: install_inst_html_docs] Error 3
make[1]: Leaving directory '/home/mhf/qtmqtt/build/gcc64-Debug/src'
make[1]: *** [Makefile:540: sub-mqtt-install_docs] Error 2
make: *** [Makefile:597: sub-src-install_docs] Error 2
19:57:11: 进程"/usr/bin/make"退出,退出代码 2 。
Error while building/deploying project qtmqtt (kit: gcc64)
When executing step "Make"
  • 打开终端,进入编译路径下,再使用sudo make installsudo make install_docs进行安装。

4、验证

  • 将qtmqtt\examples\mqtt路径下的示例工程复制 出来,使用qtcreator打开进行编译。
  • 如果不复制到qtmqtt工程外,可能无法编译。
  • 编译成功后如下所示:
  • 使用qtmqtt只需要在pro文件中添加QT += mqtt就可以引入。

5、参考

6、视频

linux下qt5全自动编译配置qtmqtt



相关推荐
C++ 老炮儿的技术栈3 小时前
在 Scintilla 中为 Squirrel 语言设置语法解析器的方法
linux·运维·c++·git·ubuntu·github·visual studio
爱学习的狮王7 小时前
window10和ubuntu22.04双系统之卸载ubuntu系统
linux·运维·ubuntu
人工智能和FPGA AI技术7 小时前
虚拟机ubuntu20.04共享安装文件夹
ubuntu
DIY全栈开发7 小时前
ESP32S3 Ubuntu vscode如何使用USB-JTAG调试
linux·vscode·ubuntu
神仙别闹7 小时前
基于QT(C++)实现(图形界面)选课管理系统
java·c++·qt
「QT(C++)开发工程师」8 小时前
Qt C++动态库SDK在Visual Studio 2022使用(C++/C#版本)
c++·qt·c#·visual studio
程序员编程指南10 小时前
Qt 与 WebService 交互开发
c语言·开发语言·c++·qt·交互
溟洵10 小时前
Qt 窗口 工具栏QToolBar、状态栏StatusBar
开发语言·前端·数据库·c++·后端·qt
程序员编程指南11 小时前
Qt 远程过程调用(RPC)实现方案
c语言·c++·qt·rpc·系统架构
木宇(记得热爱生活)12 小时前
Qt GUI缓存实现
开发语言·qt·缓存