1. 从http://www.live555.com/liveMedia/public/ 下载live.2019.06.28.tar.gz,并解压缩;

2. 生成静态库,拷贝一份config.armlinux,取名为config.hi3559a,修改后的内容如下:

CROSS_COMPILE?=     /opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin/aarch64-himix100-linux-
COMPILE_OPTS =     $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64
C =            c
C_COMPILER =       $(CROSS_COMPILE)gcc
C_FLAGS =      $(COMPILE_OPTS)
CPP =          cpp
CPLUSPLUS_COMPILER =   $(CROSS_COMPILE)g++
CPLUSPLUS_FLAGS =  $(COMPILE_OPTS) -Wall -DBSD=1
OBJ =          o
LINK =         $(CROSS_COMPILE)g++ -o
LINK_OPTS =
CONSOLE_LINK_OPTS =    $(LINK_OPTS)
LIBRARY_LINK =     $(CROSS_COMPILE)ar cr
LIBRARY_LINK_OPTS =    $(LINK_OPTS)
LIB_SUFFIX =           a
LIBS_FOR_CONSOLE_APPLICATION =
LIBS_FOR_GUI_APPLICATION =
EXE =

然后依次执行如下命令,生成的静态库等相关文件在install目录下:

./genMakefiles hi3559a
make
make install PREFIX=~/LIVE555/install

3. 生成动态库,拷贝一份config.linux-with-shared-libraries,取名为config.hi3559a-with-shared-libraries,修改后的内容如下:

# 'CURRENT':'REVISION':'AGE' are updated - whenever a library changes - as follows:
# The library code changes, but without any changes to the API (i.e., interfaces) => increment REVISION
# At least one interface changes, or is removed => CURRENT += 1; REVISION = 0; AGE = 0
# One or more interfaces were added, but no existing interfaces were changed or removed => CURRENT += 1; REVISION = 0; AGE += 1libliveMedia_VERSION_CURRENT=67
libliveMedia_VERSION_REVISION=2
libliveMedia_VERSION_AGE=1
libliveMedia_LIB_SUFFIX=so.$(shell expr $(libliveMedia_VERSION_CURRENT) - $(libliveMedia_VERSION_AGE)).$(libliveMedia_VERSION_AGE).$(libliveMedia_VERSION_REVISION)libBasicUsageEnvironment_VERSION_CURRENT=1
libBasicUsageEnvironment_VERSION_REVISION=1
libBasicUsageEnvironment_VERSION_AGE=0
libBasicUsageEnvironment_LIB_SUFFIX=so.$(shell expr $(libBasicUsageEnvironment_VERSION_CURRENT) - $(libBasicUsageEnvironment_VERSION_AGE)).$(libBasicUsageEnvironment_VERSION_AGE).$(libBasicUsageEnvironment_VERSION_REVISION)libUsageEnvironment_VERSION_CURRENT=4
libUsageEnvironment_VERSION_REVISION=0
libUsageEnvironment_VERSION_AGE=1
libUsageEnvironment_LIB_SUFFIX=so.$(shell expr $(libUsageEnvironment_VERSION_CURRENT) - $(libUsageEnvironment_VERSION_AGE)).$(libUsageEnvironment_VERSION_AGE).$(libUsageEnvironment_VERSION_REVISION)libgroupsock_VERSION_CURRENT=10
libgroupsock_VERSION_REVISION=3
libgroupsock_VERSION_AGE=2
libgroupsock_LIB_SUFFIX=so.$(shell expr $(libgroupsock_VERSION_CURRENT) - $(libgroupsock_VERSION_AGE)).$(libgroupsock_VERSION_AGE).$(libgroupsock_VERSION_REVISION)
#####CROSS_COMPILE?=         /opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin/aarch64-himix100-linux-
COMPILE_OPTS =     $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -fPIC
C =            c
C_COMPILER =       $(CROSS_COMPILE)gcc
C_FLAGS =      $(COMPILE_OPTS) $(CPPFLAGS) $(CFLAGS)
CPP =          cpp
CPLUSPLUS_COMPILER =   $(CROSS_COMPILE)g++
CPLUSPLUS_FLAGS =  $(COMPILE_OPTS) -Wall -DBSD=1 $(CPPFLAGS) $(CXXFLAGS)
OBJ =          o
LINK =         $(CROSS_COMPILE)g++ -o
LINK_OPTS =        -L. $(LDFLAGS)
CONSOLE_LINK_OPTS =    $(LINK_OPTS)
LIBRARY_LINK =     $(CROSS_COMPILE)gcc -o
SHORT_LIB_SUFFIX = so.$(shell expr $($(NAME)_VERSION_CURRENT) - $($(NAME)_VERSION_AGE))
LIB_SUFFIX =       $(SHORT_LIB_SUFFIX).$($(NAME)_VERSION_AGE).$($(NAME)_VERSION_REVISION)
LIBRARY_LINK_OPTS =    -shared -Wl,-soname,$(NAME).$(SHORT_LIB_SUFFIX) $(LDFLAGS)
LIBS_FOR_CONSOLE_APPLICATION =
LIBS_FOR_GUI_APPLICATION =
EXE =
INSTALL2 =     install_shared_libraries

然后依次执行如下命令,生成的动态库等相关文件在install目录下:

./genMakefiles hi3559a-with-shared-libraries
make
make install PREFIX=~/LIVE555/install

4. 将live555MediaServer及动态库拷贝到海思板子上,执行live555MediaServer,结果如下,说明编译正确:

GitHub:http://github.com//fengbingchun/OpenCV_Test

海思3559A上编译LIVE555源码操作步骤相关推荐

  1. 海思3559A上编译Valgrind源码操作步骤

    注:按照以下步骤可以在海思板子上正常编译valgrind源码并生成valgrind可执行文件,但可能还不能在海思板子上正常使用. 1. 从http://valgrind.org/downloads/? ...

  2. 海思3559A上编译FFmpeg源码操作步骤

    1. 从https://github.com/FFmpeg/FFmpeg/releases 下载你需要的版本: 2. 因为ffmpeg编译选项较多,为了更方便的了解有哪些选项,可将编译选项写入到一个文 ...

  3. 海思3559A上编译GDB源码操作步骤及简单使用

    1. 从http://ftp.gnu.org/gnu/gdb/ 下载最新稳定版8.3,即gdb-8.3.tar.gz,解压缩: 2. 在gdb-8.3目录下,创建一个build.sh脚本文件,内容如下 ...

  4. 海思3559A上编译libjpeg-turbo源码操作步骤

    1. 从https://github.com/libjpeg-turbo/libjpeg-turbo/releases/tag/2.0.2 下载libjpeg-turbo 2.0.2版本: 2. 脚本 ...

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

    1. 下载libyuv源代码,执行: git clone https://chromium.googlesource.com/libyuv/libyuv 2. 通过CMakeLists.txt编译生成 ...

  6. 海思3531D上编译FFmpeg源码操作步骤

    从https://github.com/FFmpeg/FFmpeg/releases 下载你需要的版本: 因为ffmpeg编译选项较多,为了更方便的了解有哪些选项,可将编译选项写入到一个文本文件con ...

  7. 在Windows和Linux上编译gRPC源码操作步骤(C++)

    gRPC最新发布版本为v1.23.0,下面以此版本为例说明在Windows和Linux下编译过程. Windows7/10 vs2103编译gRPC源码操作步骤: 1. 需要本机已安装Git.CMak ...

  8. Windows10上编译MXNet源码操作步骤(Python)

    1. 按照https://blog.csdn.net/fengbingchun/article/details/84997490  中操作步骤首先在Windows上通过VS2017编译MXNet源代码 ...

  9. 在Ubuntu14.04 64位上编译CMake源码操作步骤

    在Ubuntu上通过apt-get install安装CMake并不是最新版的,这里记录下在Ubuntu上通过源码安装CMake的操作步骤: 1.        卸载旧版CMake,执行以下命令: a ...

最新文章

  1. [Angular JS教程] HeroService: getHeroes failed: undefined 问题解决方法
  2. The Clean Architecture
  3. c#如何将一个整数转换二进制,并进行位运算
  4. python取反函数_Python优雅的反函数int(string,base)
  5. 02-java常量变量数据类型
  6. python 绘制围棋棋盘_围棋之规则基础(一)
  7. Spring.net的一个小例子
  8. 关闭报错_Cydia Impactor工具各种报错提示的解决方法!
  9. 梅西、内马尔谁是全能的五边形战士?教你用BI做出可视化能力图
  10. 磁盘文件排序-编程珠玑
  11. VS2010下配置OpenCV2.2
  12. Linux中select函数学习及实例笔记
  13. protel99实用基础入门教程
  14. 模块[camera]_摄影基础知识: 曝光补偿完全指南
  15. 信息安全:需求进一步升级 行业再上风口
  16. 北京大学Cousera学习笔记--5-计算导论与C语言基础--计算机的基本原理-设计程序...
  17. [译]关于Android图形系统的一些事实真相
  18. 如何使用Zend Expressive建立NASA照片库
  19. 【支持MSP430G2553】MSP430+BSL烧写教程
  20. python 最速曲线

热门文章

  1. 数字图像处理:(3)一阶微分算子在图像处理中的应用
  2. 【camera】基于YOLO的车辆多维特征识别系统(车色,车品牌,车标,车型)与PYQT实现(课程设计)
  3. 【图像分类案例】(2) DenseNet 天气图片四分类(权重迁移学习),附Tensorflow完整代码
  4. mysql 字段加减_MySQL中你必须了解的函数
  5. leetcode-2 两数相加
  6. 从一致性hash到ceph crush算法演进图谱(持续更新)
  7. redis学习 -- 简单动态字符串
  8. MySQL数据表命令
  9. C语言博客作业04--数组
  10. [bzoj] 1176 Mokia || CDQ分治