JRTPLIB庫在Linux平台上的編譯

來源:互聯網
上載者:User
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 拷貝庫
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.