天天看点

OneNET视频推流------使用树莓派交叉编译工具

目的:交叉编译OneNET的SDK到树莓派

/由于onenet视频sdk已经更新,本文仅提供参考,不保证成功/

简述:Raspberry Pi本身的硬件性能不是很高,所以在pi上直接编译源代码,需要消耗很多的时间。因此在选择在性能呢强大的台式机上来配置一个交叉编译平台,再将编译后的bin文件和config.json文件拷贝到树莓派来执行。

过程中,需要下载树莓派的交叉编译链。并将SDK所用到的库先交叉编译,再交叉编译OneNET SDK。

实现方法:

硬件准备:

树莓派 *1

一台Ubuntu虚拟机

如果还没有用过OneNET sdk的同学可以先看看这几篇文章

步骤流程:

一:下载树莓派交叉编译工具

选用的交叉编译工具链,是Raspberry Pi 基金会官方发布的 交叉编译工具包,也就是官方用来编译Raspbian操作系统所用的交叉编译工具链

1、直接使用git clone命令直接获取源代码

然后

cd raspberrypi-crosscompile-tools/arm-bcm2708

可以看到

gcc-linaro-arm-linux-gnueabihf-raspbian-x64文件夹

这个文件夹就是我们所需要的交叉编译工具

二:使用交叉编译工具编译libssl库

1、使用export命令声明编译目录

$ export CROSSCOMP_DIR=/path/to/basefolder/pitools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin
           

2、声明安装目录

3、进入libssl源文件,针对树莓派平台进行交叉编译

$ cd /path/to/folder/opssl
$ user@host:/path/to/folder/openssl $ ./Configure linux-generic32 \
--prefix=$INSTALL_DIR --openssldir=$INSTALL_DIR/openssl \
--cross-compile-prefix=$CROSSCOMP_DIR/arm-linux-gnueabihf-
           

其中:

  • linux-generic32 : 树莓派就是一个32位的linux系统
  • –prefix=$INSTALL_DIR : 这个目录是我们之前声明的,openssl的安装目录
  • –openssldir=$INSTALL_DIR/openssl : 这个文件夹里面有核心的配置文件
  • –cross-compile-prefix=$CROSSCOMP_DIR/arm-linux-gnueabihf- : 这个path是我们之前声明的,交叉编译链的目录。注意最后有个“-”符号不要漏掉

4、运行下面的命令

make depend
make
make install
           

交叉编译的OpenSSL就完成了。

三:交叉编译OneNET SDK

1、打开openssl安装地址

cd lib
           

复制里面所有文件。

2、打开交叉编译工具的安装位置

cd /path/to/basefolder/pitools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/lib/gcc/arm-linux-gnueabihf/
           

将openssl/lib里面的所有文件复制到上面这个目录

3、编译

打开video sdk目录,修改linux-arm.txt文件如下

OneNET视频推流------使用树莓派交叉编译工具

继续阅读