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



相关推荐
唐墨1232 小时前
android与Qt类比
android·开发语言·qt
Mike_6662 小时前
win10安装WSL2、Ubuntu24.04
windows·ubuntu·wsl2
SilentCodeY2 小时前
Ubuntu 系统通过防火墙管控 Docker 容器
linux·安全·ubuntu·系统防火墙
道剑剑非道3 小时前
QT开发技术【ffmpeg + QAudioOutput】音乐播放器 完善
开发语言·qt·ffmpeg
不惑_4 小时前
用 PyQt5 打造一个可视化 JSON 数据解析工具
开发语言·qt·json
超级土豆粉10 小时前
从0到1写一个适用于Node.js的User Agent生成库
linux·ubuntu·node.js
誰能久伴不乏10 小时前
Qt 开发中的父类与父对象的区别和父对象传递:如何选择 `QWidget` 或 `QObject`?
java·开发语言·qt
誰能久伴不乏11 小时前
理解继承与组合的本质:Qt 项目中的设计选择指南
开发语言·qt
抠脚学代码16 小时前
Ubuntu18.6 学习QT问题记录以及虚拟机安装Ubuntu后的设置
qt·学习·ubuntu
Sapphire~1 天前
Linux-07 ubuntu 的 chrome 启动不了
linux·chrome·ubuntu