第一步:下载mqtt服务器,并部署
这里我选择的mqtt服务器是mosquitto,当然你们也可以用其他的,话不多说,开始!
1.进入mosquitto下载的地址:https://mosquitto.org/download/
下载完成之后,无脑下一步安装即可。(当然安装路径可以自行修改,自行判断)
2.下载完后配置启动
安装完毕之后,在安装的路径下可以看到该配置文件
接下来我们开始配置:打开mosquitto.conf
2.1修改监听端口:找到
#listener
取消前面的# 然后指定端口号
listener 9900
2.2设置用户名密码
- 是否开启匿名用户登录
#allow_anonymous
默认是true,修改为false,不开启匿名用户登录
allow_anonymous false
2.3配置并指定pwfile.example文件路劲,配置用户信息存放位置。
#password_file
修改为:(最好配置绝对路径)
password_file E:\mqtt\pwfile.example
2.4添加用户名密码
打开cmd,切换到之前安装mosquitto的路径下
运行命令:创建账户:admin的账户
e:/mqtt/pwfile.example是之前配置文件里的路径
mosquitto_passwd.exe -c e:/mqtt/pwfile.example admin
连续输出两次密码,创建成功!
打开文件,可以看到相关的信息
添加用户:atian的账户(不用加-c,-c是覆盖之前的内容)
mosquitto_passwd.exe e:/mqtt/pwfile.example atian
2.5启动服务
右键启动。
ok完成,接下来开始测试!
3.测试
打开两个cmd窗口,进入到对应安装的目录下,也可以直接配置到环境变量里。
订阅sensor主题:
mosquitto_sub.exe -h 127.0.0.1 -p 9900 -u admin -P 123456 -v -t topic
发布sensor主题:
mosquitto_pub.exe -h 127.0.0.1 -p 9900 -u admin -P 123456 -t topic -m “hello,mosquitto”
两个窗口运行,上面的测试。(先订阅再发布)
测试成功!
完成了。
第二步:下载并且编译MQTT
我用的qt版本是5.14.2,找qt版本一致的去下载。
下载地址:https://github.com/qt/qtmqtt/tree/5.14.2
下载解压后会得到以下这些文件
接下用qt打开src路径这个,运行编译
选择MinGW编译器
然后先执行qmake,再 “构建” 就会得到编译后的文件了
注意:有些小伙伴会遇到找不到qmqttglobal.h之类的头文件什么的,不要慌,这是编译器找不到这些个头文件。
解决方法:在安装qt的路径下加上下载下来的mqtt的头文件,就像下图所示:
构建完成之后,就得到了以下这些文件
重要的是lib下的libQt5Mqtt.a,Qt5Mqtt.dll。把他们放到一个lib文件夹里。
头文件也要拿从下载的src\mqtt里拿出头文件,放到一个include文件夹里。
好了,已经完成了大半了。
接下来创建自己的mqtt项目,导入之前的lib,include就可以使用了。
接下来直接导入,就可以使用了
使用文档非常全!
使用文档:https://doc.qt.io/qt-6/qmqttclient.html