0. 交叉编译环境如下
系统:Ubuntu 4.15.0-45-generic #48~16.04.1-Ubuntu SMP Tue Jan 29 18:03:48 UTC 2019 x86_64
目标芯片:Hisi3536 32bit
1. 下载所需源码
git clone https://github.com/openssl/openssl.git
git clone https://github.com/DaveGamble/cJSON.git cjson
git clone https://github.com/eclipse/mosquitto.git
交叉编译的源码版本如下:openssl 3.1.0、cjson 1.7.15、mosquitto 2.0.15
2. 编译cjson库
进入cjson目录,执行make CC=/opt/hisi-linux/x86-arm/arm-hisiv400-linux/target/bin/arm-hisiv400-linux-gcc
编译生成cjson库
3. 编译openssl库
进入openssl目录,执行./Configure linux-generic32 --cross-compile-prefix=/opt/hisi-linux/x86-arm/arm-hisiv400-linux/bin/arm-hisiv400-linux-gnueabi- && make -j24
编译生成openssl相关库
4. 编译moquitto
4.1 打开config.mk文件定义编译器相关变量
CROSS_COMPILE:=/opt/hisi-linux/x86-arm/arm-hisiv400-linux/target/bin/
CC:=arm-hisiv400-linux-gcc
CXX:=arm-hisiv400-linux-g++
AR:=arm-hisiv400-linux-ar
LD:=arm-hisiv400-linux-ld
4.2 修改config.mk文件中cjson、openssl相关头文件、库的搜索路径
注:红色方框系cjson相关头文件、库搜索路径;蓝色方框系openssl相关头文件、库搜索路径
4.3 修改apps\mosquitto_ctrl\Makefile文件中cjson库搜索路径
4.4 修改plugins\dynamic-security\Makefile文件中cjson库搜索路径
4.5 执行make binary
编译mosquitto
标签:hisiv400,cjson,Eclipse,openssl,编译,Mosquitto,linux,arm From: https://www.cnblogs.com/jtchen/p/17398211.html