海思移植Live555

  • 移植Live555
  • 移植openssl

移植Live555

下载live555
live下载地址
下载完毕后移植到虚拟机上解压
解压完毕后我们可以得到live这个文件夹
我们要移植到板端所以我们就需要板端的交叉编译器来编译
live需要通过以下的方式生成makefile,但是由于live并没有我们的交叉编译器版本

./genMakefile armlinux

所以我们可以根据它的配置文件修改成我们所需要的版本

cp ./config.armlinux ./config.3516
vi config.3516

可以参考一下我的配置

修改的地方就三个
输入自己的交叉编译器,我的是 arm-himix200-linux-
在编译选项上加上了 -DLOCALE_NOT_USED 和我自己交叉编译过的openssl的头文件位置(请继续阅读下文)

-DLOCALE_NOT_USED原因是由于海思使用的是uClinux,并没有xlocale.h这个头文件,而live555内部的一个locale模块调用了(见liveMeida/locale.hh),因此通过编译选项把他去掉。

当然这样还是会报错:关于openssl头文件找不到的问题,所以我就需要下载openssl并且编译成我们需要的版本(下文解决了这个问题)

可以参考https://www.pianshen.com/article/60791676961/

移植openssl

下载openssl
下面是我下载的live555版本
https://www.openssl.org/source/old/1.1.1/openssl-1.1.1h.tar.gz
下载链接
当然也可以去官网下载最新的版本
openssl下载地址链接
https://oomake.com/download/openssl

交叉编译openssl

tar -zxvf openssl-1.1.1h.tar.gz //解压openssl

编译时需要指定安装路径,否则会自动安装在/usr/local/ssl/lib(所以请自行创建一个文件夹)
进入解压后的文件夹执行一下命令
prefix后是自己指定安装的文件夹(绝对路径)

./config no-asm -shared -no-async --prefix=/home/xxx1/hi/sdk/open_ssl
vi Makefile

打开Makefile修改成开发板的交叉编译器如下图:

修改92行为我们自己的交叉编译器,然后在文本中查找 -m64 这个词,一共有两处将它删除掉。
然后执行

make && make install

这样编译好的openssl就到了我们指定的文件夹(下图是里面的内容)

前面我们编译时总是会报错openssl.h找不到所以我们需要把编译的lib下的
.a和.so放到/usr/lib的目录下,当然也可以用链接的方式
ln -s /usr/lib 目标文件
前面的编译选项 -I/home/xxx1/hi/sdk/open_ssl/include就是我们编译的openssl安装好文件夹下的include的位置
至此我们就可以解决上面提到的openssl.h找不到的问题了

最后一步啦!我们打开编译的文件/live/mediaServer下有个可以直接使用的./live555MediaServer将这个程序直接移植到板端。
还还还有一步就是将我们编译好的/openssl/lib下的
libcrypto.so.1.1 libssl.so.1.1
两个动态文件放到我们根文件系统的/usr/lib
然后我们的./live555MediaServer就可以正常在板端运行了,需要将我们的播放或者编码文件放到和./live555MediaServer在同一个文件下面

海思移植Live555相关推荐

  1. 海思移植opencv+车辆检测

    1.确保ubuntu能上网 2.安装cmake 代码: 全选 sudo apt-get install cmake-gui 3.下载opencv2.4.9 Linux版源码,不要用最新的3.0.0 h ...

  2. 四、基于海思芯片:从算法到移植 生成海思wk文件并进行成果展示

    一.基于海思芯片:从算法到移植  darknet框架下训练yolov3 二.基于海思芯片:从算法到移植   darknet框架下yolov3转为caffe框架下 三.基于海思芯片:从算法到移植   c ...

  3. openssl 64位编译_海思hi3516dv300开发--live555交叉编译

    1.live555下载 官网: LIVE555 Streaming Media​www.live555.com 下载 .tar.gz后缀源码 解压: tar -zxvf live.2020.04.24 ...

  4. mysql移植海思_live555 交叉编译移植到海思开发板

    1.首先到它的主页下载一个源码包: http://www.live555.com/liveMedia/public/ 我下载的是latest的,具体什么版本还真不清楚 2.放到linux目录下解压: ...

  5. 海思3559A上编译LIVE555源码操作步骤

    1. 从http://www.live555.com/liveMedia/public/ 下载live.2019.06.28.tar.gz,并解压缩: 2. 生成静态库,拷贝一份config.arml ...

  6. 海思3559移植yolov3

    此人博客上有完整教程: https://blog.csdn.net/avideointerfaces/article/category/8762084 海思3559移植yolov3 海思AI芯片(Hi ...

  7. 海思Hi3559A平台移植 opencv4.0.0

    原文:https://blog.csdn.net/xclshwd/article/details/85257117 海思Hi3559A平台移植 opencv4.0.0 2018年12月26日 09:5 ...

  8. python交叉编译_交叉编译Python3.6.2,使用海思arm-hisiv200-linux-gcc,移植到arm开发板上...

    最近在学习Python,感觉使用Python可以快速的写出程序,比之前使用的C语言快多了,能省出很多时间.多学一点知识有更多的选择.本职工作是嵌入式开发,学习了Python后想移植到开发板上,尝试嵌入 ...

  9. 海思芯片怎么使用tde给qt加速_基于Hisi芯片,交叉编译、移植Qt4.8.6(可旋转)

    一.安装海思编译链 安装海思编译链(如arm-hisiv300-linux-*),不做赘述. 二.下载Qt4.8.6源码包 源码包:qt-everywhere-opensource-src-4.8.6 ...

最新文章

  1. LVS负载均衡之持久性连接介绍(session篇)
  2. Unity进阶技巧 - 从文件读取游戏数据
  3. Roguelike游戏的视野算法
  4. c mysql并行多条sql_Linux上使用C语言执行多条SQL命令访问MYSQL数据库的有关问题...
  5. jquery验证手机号码和邮箱地址例子
  6. 怎么读取can报文_【案例】东风天龙“仪表未收到EECU报文”
  7. Lapack求解线性方程组
  8. windebug的妙用
  9. spring Annotation 组件注入
  10. sqlerver 字符串转整型_Sqlerver进行模糊查询like和转义字符
  11. 图解WIN7通过“磁盘管理”功能进行分区的详细过程
  12. Python实现音乐推荐系统【跟着迪哥学python】
  13. Win7如何解决精简版的迅雷7无法运行
  14. linux设备驱动之 i2c设备驱动 at24c08驱动程序分析【全部地址的操作】
  15. 服务器硬盘数据备份到nas,这么设置USBCopy数据就能轻松备份至NAS
  16. 有关注册表技术的各大网站列表
  17. 《英语语法新思维 基础版1》读书笔记(一)
  18. 关于STM32F103x系列ISP烧写出现“程序文件不是0x8000000和0x20000000区域的”解决办法。
  19. 微软黑科技如何加速游戏开发,读这篇就够了
  20. 2015移动互联网行业趋势盘点(PPT)

热门文章

  1. java中包地作用_什么是PCB设计中的包地
  2. ImageJ 用户手册——第三部分(ImageJ扩展)
  3. 二. 征服C指针:C如何使用内存
  4. 2.发那科工业机器人操作规范及坐标系介绍
  5. 遍历SD卡寻找自己想要的文件
  6. java 又一次抛出异常 相关处理结果演示样例代码
  7. linux超级无敌指令进阶
  8. android系统软件卸载_adb配置使用
  9. 神经网络方法研究及应用,神经网络基础与应用
  10. 计算机文件管理word,WORD打开文件的方式和管理文件-word技巧-电脑技巧收藏家