Linux下live555的编译

使用海思arm-hisiv100nptl-linux交叉编译

一、准备“live555”源码

项目地址http://www.live555.com/

下载 “live555-latest.tar"

二、解压、编译并安装“live555” 

[plain]  view plain  copy
  1. tar -zxvf live555-latest.tar  
  2. cd live  
  3. 通过改写"config.armlinux"文件保存为我们的makefile配置文件"config.hi3531"再进行编译  
最新版本的live555库已经更正了以前的一些错误,请详细比对
[cpp]  view plain  copy
  1. CROSS_COMPILE?=arm-hisiv100nptl-linux-  
  2. COMPILE_OPTS =$(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLOCALE_NOT_USED  
  3. C =c  
  4. C_COMPILER =$(CROSS_COMPILE)gcc  
  5. C_FLAGS =$(COMPILE_OPTS)  
  6. CPP =cpp  
  7. CPLUSPLUS_COMPILER =$(CROSS_COMPILE)g++  
  8. CPLUSPLUS_FLAGS =$(COMPILE_OPTS) -Wall -DBSD=1  
  9. OBJ =o  
  10. LINK =$(CROSS_COMPILE)g++ -o  
  11. LINK_OPTS =  
  12. CONSOLE_LINK_OPTS =$(LINK_OPTS)  
  13. LIBRARY_LINK =$(CROSS_COMPILE)ar cr   
  14. LIBRARY_LINK_OPTS =$(LINK_OPTS)  
  15. LIB_SUFFIX =a  
  16. LIBS_FOR_CONSOLE_APPLICATION =  
  17. LIBS_FOR_GUI_APPLICATION =  
  18. EXE =  

三、生成makefile并编译安装

保存我们的config.3531,后缀即为我们生成makefile的参数

[plain]  view plain  copy
  1. ./genMakefile 3531  
  2. make  
  3. make install  

四、测试

进入live/testProgs文件夹,可以看到已经生成的各种示例程序。使用服务端live555MediaServer和客户端testRTSPClient进行测试。
[plain]  view plain  copy
  1. ./live555MediaServer  
运行后,当前目录下所支持的视频文件将会被自动变成流媒体发送。可以使用vlc进行播放。
[plain]  view plain  copy
  1. ./testRTSPClient rtsp://192.168.1.1  
运行后,假设192.168.1.1是一个流媒体服务器,请求成功后会出现接收数据的打印信息。 注意:如果服务器需要用户认证信息,直接请求会返回401失败信息,修改testRTSPClient.cpp加入认证就可以成功请求。
另一个示例openRTSP增添了很多配置信息,具体可以参考live555的手册,添加认证的方法如下:
[plain]  view plain  copy
  1. ./openRTSP -u admin admin rtsp://192.168.1.1  



完成上述工作后live555就已经成功部署到linux中了。
最重要的一点:在编译自己的live555程序时,在调用静态库的时候务必遵守以下调用顺序,否则会出现链接库不成功的情况。
[plain]  view plain  copy
  1. libliveMedia.a  
  2. libgroupsock.a   
  3. libBasicUsageEnvironment.a  
  4. libUsageEnvironment.a  

欢迎关注并加入物联网行业联盟,积累行业人脉和资源。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值