JRTPLIB库在Linux平台上的编译

JRTPLIB库在Linux平台上的编译

1、jrtplib简介
  RTP 是目前解决流媒体实时传输问题的最好办法,要在 Linux 平台上进行实时传送编程,可以考虑使用一些开放源代码的 RTP 库,如 LIBRTP、JRTPLIB 等。JRTPLIB 是一个面向对象的 RTP 库,它完全遵循 RFC1889设计,在很多场合下是一个非常不错的选择。JRTPLIB 是一个用 C++ 语言实现的 RTP 库,这个库使用Socket 机制实现网络通讯 因此可以运行在 Windows、Linux、FreeBSD、Solaris、Unix和VxWorks 等多种操作系统上。

  2、jrtplib的编译
  (1) 此库在PC机Linux上的编译。
  以下使用Readhat 9.0,内核版本为2.4。jrtplib库一般与jthread库一起使用。当jrtplib库单独使用时,确保主机系统上安装了GCC编译器。步骤如 下:进入安装目录configure;make;make install。安装完把此库的include文件放到/usr/local/include下。当与jthread库一起使用时,先编译 jthread,并把此库编译后的include文件放在/usr/local/include下,然后再编译jrtplib库。

  (2) jrtplib库应用于ARM9的交叉编译。
  jrtplib与平台有关。jrtplib库的交叉编译指定的ARM编译工具链是arm-linux,而ARM7的交叉编译工具链是arm-elf, 因此在ARM9+Linux平台上实现。用arm-linux-gcc编译时,需做此库的交叉编译场景分析。经过多次尝试成功编译。具体做 法,configure前,在shell环境下输入两条语句export config_BUILD_CC = gcc export config_TARGET_CC = arm-linux-gcc,配置使用./configure --host = arm-linux。在rtperrors.h中添加头文件stdio.h,否则编译会出现相应的问题。

若干注意问题:
1. arm-linux-gcc -v 

       gcc version 3.4.1
2. 分别 进入 目录 jthread-1.2.1 jrtplib-3.7.1
    ./configure --host=arm-linux   --prefix=home/XXX/
  make
  make install
3.  vi src/rtperrors.h 
    添加  #include <stdio.h>
4.  vi src/rtpconfig_unix.h
    注释 //#define RTP_BIG_ENDIAN // comment this if the target is a little endian system 
5.有时候编译会提示memcpy找不到,
   在该文件前添加
#include<stdio.h>
#include<string.h>  
就可以编译过了!
6. vi examples/Makefile  //处理链接库
INCLUDES = -I /usr/local/include/jthread -I ../src/
LDADD = ../src/.libs/libjrtp.a -L/usr/local/lib/ -ljthread -lpthread
7. cp -arf *.so 拷贝库
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值