MQTT 04 - 移植 MQTT client paho 到 omapl138

版权声明:知识共享-署名-相同方式共享(CC-BY-SA) https://blog.csdn.net/engrossment/article/details/87685093

概述

根据上篇《移植 MQTT broker mosquitto 到 omapl138》 https://blog.csdn.net/engrossment/article/details/87596255 移植好 MQTT 的 server 后,下一步就是移植客户端了。下面介绍两个客户端的移植安装。可以按需选择。

其实这里介绍的两个都是 eclipse 实现的 paho.mqtt,只是不同语言的版本。

python 版本 paho-mqtt

首先在 omapl138 上可以基于原有的 python 2.7 环境直接安装 paho-mqtt 模块,然后就可以写 python 程序使用 paho 与 mosquitto broker 进行通信了。

步骤:

  • 准备 python 环境。由于我正在使用的 omapl138 文件系统上的 python 2.7 缺乏 setuptool 等模块,需要先安装。
    • 更新opkg。Target#  opkg update
    • 为简便起见,直接安装全部模块。Target#  opkg install python-modules

完成安装!

C 版本 paho.mqtt.c

如果需要用 C 语言进行程序开发,那就要移植 C 版本的 MQTT 客户端了。我们同样选择了 paho,对标准的支持性很好。

步骤:

  • 在 Ubuntu 安装文档生成的相关工具。Host#  sudo apt-get install doxygen graphviz
  • 进入 138 开发环境。Host#  source /home/jack/omapl138/ti/mcsdk_1_01_00_02/linux-devkit/environment-setup
  • 下载源码包。https://github.com/eclipse/paho.mqtt.c/releases
  • 解压并进入源码包。Host#  cd paho.mqtt.c-1.2.0  &&  mkdir  build  &&  cd build
  • 修改交叉编译 toolchain 配置。Host#  vim ../cmake/toolchain.linux-arm11.cmake 修改 SET(CMAKE_C_COMPILER arm-arago-linux-gnueabi-gcc)
  • 执行 cmake。Host#  cmake -DCMAKE_INSTALL_PREFIX=target -DPAHO_WITH_SSL=FALSE -DPAHO_BUILD_SAMPLES=TRUE -DPAHO_BUILD_DOCUMENTATION=TRUE -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain.linux-arm11.cmake ..
  • 执行编译。Host#  make && make install
  • 生成的目标文件在 target 目录。这里的文件可以用作交叉编译生成目标程序放到 omapl138 上运行,同时需要复制一份放到 omapl138 的  /usr 下。

完成移植!

猜你喜欢

转载自blog.csdn.net/engrossment/article/details/87685093