MQTT学习(四)-linux下交叉编译

本文介绍了如何在Linux环境下进行MQTT客户端mosquitto的交叉编译,包括编译openssl、libuuid以及mosquitto本身。详细步骤包括设置配置选项、修改Makefile、添加头文件和库文件路径,并解决编译过程中遇到的问题。

mosquitto在运行的时候需要用到几个比较重要的动态库libmosquitto.so, libssl.so, libcrypto.so,需要参看用户的配置,可能不光光需要包含这么多库,本文章在设置是配置项如下:
这里写图片描述

其中libmosquitto.so是由mosquitto的源代码编译来的一些函数的动态库,另外两个则需要先进行交叉编译,生成ARM架构的动态库才可以在编译的时候应用。

1.交叉编译openssl
libssl.so和libcrypto.so其实是openssl的动态库,所以需要进行openssl的交叉编译。我用的是openssl-1.0.2e,版本之间应该差别不大。下载openssl源代码,用命令:wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2e.tar.gz
之后tar -zxvf openssl-1.0.2e.tar.gz将其解压
./config no-asm -shared – prefix=/usr/local/ssl-1.0.2/, 注意no-sam一定要有,–prefix为安装目录,如果不执行install可以不指定
另外,需要更改编译器,
vim Makefile
找到CC=gcc(也可能是CC=cc)
将其修改为CC=arm-linux-gnueabihf-gcc(你自己所用到的交叉编译器)
将SHLIB_VERSION_NUMBER=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值