上一篇博客讲的是创建产品和设备,本讲,我们将阿里云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
运行测试。