admin管理员组文章数量:1533913
一 前言
本人弄毕设,想用手机运行简单的qt mqtt程序来和Linux arm板通信,期间碰到很多坑,而且部分资料老旧,或者有误,完全按照资料操作甚至各种报错,期间结合个人的一些理解和其它资料的补充最终实现了目的,解决了坑。
二 环境
手机:红米K50 Ultra
系统:小米澎湃OS1.0.2.0(Android 14)
电脑:Windows11
QT版本:QT6.5.3
三 mqtt源码编译得到库和头文件
以下文章主要借鉴这个他们的文章:
http://t.csdnimg/Sg0Bu QT6 编译官方MQTT模块 - 波波今天好好学习了吗 - 博客园 (cnblogs)
3.1 下载mqtt源码
进入 https://github/qt/qtmqtt 网站下载和自己qt版本对应的mqtt源码,github网站怎么连,怎么下载需要读者自行百度,这不是本文重点。
3.2 编译mqtt源码前环境准备
在编译mqtt之前,需要先安装perl,python,conan
可参考以下文章:
python: http://t.csdnimg/YbW2P
perl: Windows安装perl环境教程 - 知乎 (zhihu)
conan: 在Windows中打开命令提示符,输入
pip install conan
3.3 环境变量设置
编译mqtt过程中使用到的工具需要将它们加入系统的环境变量中,不会设置环境变量的请读者自行百度搜索,教学很多也很简单。需要配置的工具有:qt6中使用的编译器、CMake、Ninja、perl、python 。参考这个老哥(上面参考的文章也是他写的)的图:
3.4 编译mqtt源码
打开qt creator以后点击: 文件-->打开文件或项目-->mqttxxx版本的源码的目录下的CMakeLists.txt
然后点击,这里要选择Clang arm64-v8a编译器,该编译器适用于2016年以后的大部分手机。(ClashForAndroid版本区分arm64-v8a/universal/armeabi-v7a/x86_64 - 机场GO (jichanggo))
以下的页面是已经设置好的
第3步后得到如下页面,直接确定
然后就显示以下的页面了
点左下角的锤子进行构建。如果没亮,可以重进一下qt creator然后直接打开当前的mqtt源码项目,我期间也是锤子总是不亮,重进就解决了。
3.5 编译源码后的处理
3.5.1 mqtt库
编译成功后得到如下页面:
进入该目录
将这两个文件移动到QT6文件中的安卓编译器目录中,如下图所示
3.5.2 mqtt头文件
进入mqtt源码的src源码目录下的mqtt目录中,复制全部文件
粘贴到安卓编译器android_arm64_v8a的include\QtMqtt(需要自行创建QtMqtt文件)目录中
至此mqtt源码已成功合并进了咱们的QT框架中。
四 简单使用mqtt
包含刚才移植的头文件,下面的警告不管,qt认为我的命名容易引起问题,懒得改了我只想测试。
创建一个mqtt连接
发布消息,指定主题和内容
效果如下图
版权声明:本文标题:2024 将具有mqtt通信协议的QT6程序部署到安卓系统(Android 14) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1726414884a1069692.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论