上一篇博客讲的是创建产品和设备,本讲,我们将阿里云iot-SDK 移植到arm开发板。
参考资料:

https://code.aliyun.com/edward.yangx/public-docs/wikis/user-guide/linkkit/Port_Guide/Build_ArmLinux

阿里云源码默认编译出来的可执行文件是不能够在ARM板上运行的,如下:
在这里插入图片描述
为了能够编译出能够在ARM板上运行的可执行文件,我们需要做如下配置:

1、安装交叉编译工具链

sudo apt-get install -y gcc-arm-linux-gnueabihf

注:编译阿里云的编译器应该和编译文件系统所使用的编译器一致。

2、创建平台配置文件

2.1创建配置文件

vim tools/board/config.arm-linux.demo

2.2输入配置内容

CONFIG_ENV_CFLAGS = \
    -D_PLATFORM_IS_LINUX_ \
    -Wall \
    -DNO_EXECUTABLES \

CONFIG_ENV_LDFLAGS = \
    -lpthread -lrt \
**注:这部分,应根据自己的编译器,进行对应的修改**
OVERRIDE_CC = arm-linux-gnueabihf-gcc
OVERRIDE_AR = arm-linux-gnueabihf-ar
OVERRIDE_LD = arm-linux-gnueabihf-ld

CONFIG_wrappers :=

3、选择平台配置

我们选择3
在这里插入图片描述

4、编译

make

5、检查生成的可执行文件

编译成功以后,会在目录output/release/bin下生成可执行文件。
在这里插入图片描述

查看文件类型:
在这里插入图片描述
说明编译出来的可执行文件是ARM架构,可以在开发板运行。

6、将可执行文件移植到ARM开发板

./mqtt-example

运行测试。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐