关于MQTT的安装之前写过一次,但是不够详细,这里重新补充一下,以后用到的时候更方便。

1. 安装MQTT服务器

上网搜索apache activemq,找到它的官网https://activemq.apache.org/。

 

 

下载Linux版本。写文档时版本为ActiveMQ 5.18.1 Release

解压后进入目录,运行:./bin/activemq console

即可启动服务

 

无法启动,java版本不对。安装对应的java版本。

$sudo apt install openjdk-11-jdk

然后再次启动服务

2. 安装MQTT 客户端

在https://github.com/eclipse/paho.mqtt.c下载安装包并解压,进入目录。

$make

报错,然后sudo apt install libssl-dev

$make

成功

$make install

注意,这里直接make,不是去build文件夹下make。

3. 测试是否安装成功,使用自带的示例

发布程序示例MQTTClient_publish.c:

$cd src/samples/

在mqtt工程的src/samples目录下,打开MQTTClient_publish.c。

通过修改#define ADDRESS设置服务器地址。

$vi MQTTClient_publish.c

将#define ADDRESS     "tcp://mqtt.eclipseprojects.io:1883"更改为

  #define ADDRESS     "tcp://172.16.67.130:1883"

然后保存退出。

172.16.67.130是步骤1服务所在的ip,这里与代码都在同一个机器上。

修改#define PAYLOAD 设置消息内容。(这里保持不变)

修改#define TOPIC修改发布主题。(这里保持不变)

订阅程序示例MQTTClient_subscribe.c:

在mqtt工程的src/samples目录下,打开MQTTClient_subscribe.c

通过修改#define ADDRESS设置服务器地址。

$vi MQTTClient_subscribe.c

将#define ADDRESS     "tcp://mqtt.eclipseprojects.io:1883"更改为

  #define ADDRESS     "tcp://172.16.67.130:1883"

然后保存退出

修改#define TOPIC修改订阅主题。主题与发布者一致时,可收到发布的消息。(这里保持不变)

$cd ../../

$make

$cd build/output/samples

回到paho.mqtt.c的目录下,然后重新make,在build/output/samples会有生成文件,执行MQTTClient_subscribe,然后在另一个终端执行MQTTClient_publish,就可以看到通信。

 

相关阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。