paho编译移植

1.  交叉编译openssl

  1. openssl官网(https://www.openssl.org/source/)下载源码,解压并修改其Makefile,在文件首加入(将arm-linux改为自己的交叉编译链)

         CC = arm-linux-gcc

         AR = arm-linux-ar

         RANLIB = arm-linux-ranlib

         INSTALLTOP = /home/MQTT/openssl

         OPENSSLDIR = /home/MQTT/openssl,

(2)执行make,make install。在/home/MQTT/openssl目录生成头文件和库文件。

2.  交叉编译paho-mqtt

(1)下载paho-mqtt源码(https://github.com/eclipse/paho.mqtt.embedded-c),解压并修改其Makefile,在文件首加入

CC = arm-linux-gcc

CFLAGS += -I/home/MQTT/openssl/include

LDFLAGS += -L/home/MQTT/openssl/lib

(2)执行make,在build/output/samples下生成qos0pub和pub0sub1,并在build/output下生成 libpaho-embed-mqtt3c.so.1,libpaho-embed-mqtt3c.so 库文件

 

 

 

 

 

(3)在build/output/samples下,执行arm-linux-readelf –a qos0pub查看移植qos0pub运行所需库文件。由此命令可知需要libc.so.6和libpaho-embed-mqtt3c.so.1。

 

(4)执行file libpaho-embed-mqtt3c.so.1,可知该库文件动态链接到libpaho-embed-mqtt3c.so.1.0,因此移植时需同时将libpaho-embed-mqtt3c.so.1.0复制到/lib目录下。

 

(5)将编译生成的两个可执行文件qos0pub和pub0sub1上传到设备(二进制上传),将程序所需的库文件libc.so.6,libpaho-embed-mqtt3c.so.1和libpaho-embed-mqtt3c.so.1.0上传到设备/lib目录下。

(6)在可执行文件的目录下执行chmod –R 777 qos0pub修改该文件权限,执行./ qos0pub.

 

Paho-mqtt移植成功。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值