• 说明

本文章详细记录了编译telepresence的详细过程。

为了保证移植的便利,所有用到的库,都自行编译。

  • 参考文档

https://github.com/DoubangoTelecom/telepresence/blob/master/Support_BuildingSourceCode.md

  • 准备工作
apt update
apt install gcc make camke
apt install autoconf subversion git wget g++ pkg-config 
# libtool libtool nasm
  • 下载编译libtool

https://blog.csdn.net/quantum7/article/details/104086313

 

 

以上编译,注意都要设置prefix

  • 编译doubango
BUILD_LIBS=${HOME}/build_libs
 
export PATH=${BUILD_LIBS}/bin:${PATH}
export PKG_CONFIG_PATH=${BUILD_LIBS}/lib/pkgconfig:${PKG_CONFIG_PATH}

./autogen.sh

cd bindings
./autogen.sh
cd ..


# 关键一步,必须!
autoreconf -fiv
 
./configure  \
     CFLAGS=-I${BUILD_LIBS}/include \
    LDFLAGS=-I${BUILD_LIBS}/lib \
    --with-ssl --with-srtp --with-vpx --with-yuv --with-amr --with-speex --with-speexdsp --enable-speexresampler --enable-speexdenoiser --with-opus --with-gsm --with-ilbc --with-g729 --with-ffmpeg
 
#    --with-speexdsp --with-ffmpeg --with-opus
#    --prefix=${BUILD_LIBS}
 
make
 
sudo make install

# for telepresence
cp bindings/_common/* ../telepresence/tinywrap
  • 下载编译TelePresence

 https://github.com/DoubangoTelecom/telepresence

BUILD_LIBS=${HOME}/build_libs
DOUBANGO_INC=${HOME}/telecom/doubango/doubango/bindings/_common

export PATH=${BUILD_LIBS}/bin:${PATH}
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:${BUILD_LIBS}/lib/pkgconfig:${PKG_CONFIG_PATH}

autoreconf -fiv

./autogen.sh

./configure \
    --prefix=${BUILD_LIBS} \
    CFLAGS=-I${BUILD_LIBS}/include \
    LDFLAGS="-L${BUILD_LIBS}/lib -I/usr/local/lib"

实际编译中,最大的问题就是ffmpeg接口太老。要么改成新接口,要么使用老的ffmpeg(具体哪个版本吾亦没试)