linux交叉编译live555

简介: linux交叉编译live555

Live 555 百科


是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了标准流媒体传输,是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+ 、DV、JPEG视频和多种音频编码。同时由于良好的设计,Live555非常容易扩展对其他格式的支持。Live555已经被用于多款播放器的流媒体播放功能的实现,如VLC(VideoLan)、MPlayer。


软件下载地址


http://www.live555.com/liveMedia/public/

寻找最新的软件包.


编译软件


#
tar -zxvf  live555-latest.tar.gz
cd ./live
#通过genMakefiles生成交叉编译的Makefile,我们需要一个对应的config.*
#拷贝一份用于修改
cp config.armlinux config.hi

修改之前:

CROSS_COMPILE?=   arm-elf-
COMPILE_OPTS =    $(INCLUDES) -I/usr/local/include -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 = -lssl -lcrypto
LIBS_FOR_GUI_APPLICATION =
EXE =

修改以后:

#1:修改了CROSS_COMPILE路径,交叉编译器路径
#2.增加了DLOCALE_NOT_USED参数,海思使用的是uClinux,并没有xlocale.h这个头文件,
#3.增加了依赖库opensll的路径链接
#而live555内部的一个locale模块调用了(见liveMeida/locale.hh)
#
CROSS_COMPILE?=   /home/czjia/work/sdk041/tools/linux/toolchains/arm-histbv310-linux/target/../bin/arm-histbv310-linux-
COMPILE_OPTS =    $(INCLUDES) -I/usr/local/include -I/armlib/openssl/include -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLOCALE_NOT_USED
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 = -lssl -lcrypto -L/armlib/openssl/lib
LIBS_FOR_GUI_APPLICATION =
EXE =
./genMakefiles hi
make


目录
相关文章
|
7月前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
262 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
7月前
|
存储 算法 编译器
【Linux 应用开发 】交叉编译的浮点数处理问题:从表象到底层原理的探索与解决
【Linux 应用开发 】交叉编译的浮点数处理问题:从表象到底层原理的探索与解决
145 1
|
7月前
|
Unix Linux Shell
FFmpeg开发笔记(八)Linux交叉编译Android的FFmpeg库
在Linux环境下交叉编译Android所需的FFmpeg so库,首先下载`android-ndk-r21e`,然后解压。接着,上传FFmpeg及相关库(如x264、freetype、lame)源码,修改相关sh文件,将`SYSTEM=windows-x86_64`改为`SYSTEM=linux-x86_64`并删除回车符。对x264的configure文件进行修改,然后编译x264。同样编译其他第三方库。设置环境变量`PKG_CONFIG_PATH`,最后在FFmpeg源码目录执行配置、编译和安装命令,生成的so文件复制到App工程指定目录。
362 9
FFmpeg开发笔记(八)Linux交叉编译Android的FFmpeg库
|
6月前
|
Linux
Linux交叉编译+粤嵌LCD实现三色图
Linux交叉编译+粤嵌LCD实现三色图
|
4月前
|
NoSQL Linux C语言
嵌入式GDB调试Linux C程序或交叉编译(开发板)
【8月更文挑战第24天】本文档介绍了如何在嵌入式环境下使用GDB调试Linux C程序及进行交叉编译。调试步骤包括:编译程序时加入`-g`选项以生成调试信息;启动GDB并加载程序;设置断点;运行程序至断点;单步执行代码;查看变量值;继续执行或退出GDB。对于交叉编译,需安装对应架构的交叉编译工具链,配置编译环境,使用工具链编译程序,并将程序传输到开发板进行调试。过程中可能遇到工具链不匹配等问题,需针对性解决。
156 3
|
7月前
|
安全 Linux Android开发
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
该文介绍了如何在Linux服务器上交叉编译Android的FFmpeg库以支持HTTPS视频播放。首先,从GitHub下载openssl源码,解压后通过编译脚本`build_openssl.sh`生成64位静态库。接着,更新环境变量加载openssl,并编辑FFmpeg配置脚本`config_ffmpeg_openssl.sh`启用openssl支持。然后,编译安装FFmpeg。最后,将编译好的库文件导入App工程的相应目录,修改视频链接为HTTPS,App即可播放HTTPS在线视频。
130 3
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
|
6月前
|
Rust Linux iOS开发
Rust 交叉编译 macOS 为 Linux 和 Windows
Rust 交叉编译 macOS 为 Linux 和 Windows
289 0
|
6月前
|
Linux 编译器 C语言
编译Linux内核:基础、重要性和交叉编译方法
Linux内核作为操作系统的心脏,负责管理计算机的硬件资源,同时也是运行所有其他程序的基础。理解如何编译Linux内核对于系统管理员、开发者乃至高级用户来说都是一项极其宝贵的技能。本文将介绍编译Linux内核的基本知识、编译的重要性、具体步骤以及交叉编译的概念。
453 0
|
7月前
|
JSON Ubuntu Linux
LuaJit交叉编译移植到ARM Linux
LuaJit交叉编译移植到ARM Linux
170 1
|
7月前
|
Linux 计算机视觉
Linux交叉编译opencv并移植ARM端
通过以上步骤,你可以在Linux上交叉编译OpenCV,并将生成的库文件和头文件移植到ARM平台上,从而在ARM上使用OpenCV。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
506 0