免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1406 | 回复: 0
打印 上一主题 下一主题

JRTPLIB库在Linux平台上的编译 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-22 08:51 |只看该作者 |倒序浏览
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
  export config_BUILD_CC=gcc
   export config_TARGET_CC=arm-linux-gcc
  ./configure --host=arm-linux
  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.  vi src/rtpsession.cpp
        if (!gotlogin)
        {
                char *logname = getenv("LOGNAME");
                char myname[] = {'R','u','n','S','h','e','n','g','\0'};
                logname = myname;
                if (logname == 0)  //处理返回错误
                        return ERR_RTP_SESSION_CANTGETLOGINNAME;
                strncpy((char *)buffer,logname,*bufferlength);
        }
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 拷贝库
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP