zoukankan      html  css  js  c++  java
  • MQTT初步使用

    环境搭建

      1、mosquitto所需要的rpm包

      2、c-ares-1.12.0 

      3、安装最新的openssl版本

      4、mosquitto-1.4.10

    mosquitto需要的rpm包

      

    c-ares安装

    c-ares源码下载
    ./buildconf    #提示libtoolize not found.  需要安装libtool,autoconf,automake
    ./configure
    make
    make install

    用最新的openssl

    编译mosquitto提示出错,‘EC_KEY’ undeclared 
    代码不支持老的openssl,所以宏定义提示找不到。
    使用openssl-OpenSSL_1_1_0.zip版本
     $ ./config
     $ make
     $ make install
    代码不支持老的openssl,所以宏定义提示找不到。
    使用openssl-OpenSSL_1_1_0.zip版本
    其他程序会用到旧版的openssl,拷贝新的/usr/local/lib/libssl、/usr/local/lib/libcrypto到 /usr/lib/满足兼容

    mosquitto使用

    编译
    make  binary    #只编译二进制文件,不编译man,否则会提示xml错误
    src目录下生成mosquitto代理服务器
    client目录下生成mosquitto_pub、mosquitto_sub 发布/订阅端。
    编译出错一
    1486548985: Error: Invalid user 'mosquitto'.  错误提示
    编译出错二
    warning: failed to load external entity "/usr/share/xml/docbook/stylesheet/docbook-xsl/manpages/docbook.xsl"
    compilation error: file manpage.xsl line 3 element import
    xsl:import : unable to load /usr/share/xml/docbook/stylesheet/docbook-xsl/manpages/docbook.xsl
    compilation error: file mosquitto.8.xml line 4 element refentry
    解决出错一
    adduser mosquitto
    解决出错二
    yum install  docbook-style-xsl
    修改 ./man/manpage.xsl第三行
    href="/usr/share/sgml/docbook/xsl-stylesheets-1.75.2/manpages/docbook.xsl"/>

    运行/client/mosquitto_pub -t sex -m woman 之后
    mosquitto 代理端打印:
    [root@localhost src]# ./mosquitto -v
    1486549883: mosquitto version 1.4.10 (build date 2017-02-08 01:45:55-0800) starting
    1486549883: Using default config.
    1486549883: Opening ipv4 listen socket on port 1883.
    1486549883: Opening ipv6 listen socket on port 1883.
    1486550188: New connection from ::1 on port 1883.
    1486550188: New client connected from ::1 as mosqpub/21894-localhost (c1, k60).
    1486550188: Sending CONNACK to mosqpub/21894-localhost (0, 0)
    1486550188: Received PUBLISH from mosqpub/21894-localhost (d0, q0, r0, m0, 'sex', ... (5 bytes))
    1486550188: Received DISCONNECT from mosqpub/21894-localhost
    1486550188: Client mosqpub/21894-localhost disconnected.
    运行/client/mosquitto_sub -t sex  之后
    mosquitto 代理端打印:
    1486551115: New connection from ::1 on port 1883.
    1486551115: New client connected from ::1 as mosqsub/21928-localhost (c1, k60).
    1486551115: Sending CONNACK to mosqsub/21928-localhost (0, 0)
    1486551115: Received SUBSCRIBE from mosqsub/21928-localhost
    1486551115:     sex (QoS 0)
    1486551115: mosqsub/21928-localhost 0 sex
    1486551115: Sending SUBACK to mosqsub/21928-localhost
    mosquitto_sub 端收到订阅的消息:
    [root@localhost client]# ./mosquitto_sub -v -t sex
    sex woman

    待续

      .......

  • 相关阅读:
    使用一系列命令生成字母数字符号组合
    linux分析apache日志获取最多访问的前10个IP
    shell脚本输出九九乘法表
    shell脚本输出空心等腰三角形
    awk与sed命令面试题整理
    linux分析apache日志获取最多访问的前10个IP
    iOS开发-由浅至深学习block
    PM常用软件&工作平台
    iOS开发之—— 各种加密的使用(MD5,base64,DES,AES,RSA,DSA)
    MVVM With ReactiveCocoa
  • 原文地址:https://www.cnblogs.com/daiker/p/6379516.html
Copyright © 2011-2022 走看看