- 说明
本文章详细记录了编译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(具体哪个版本吾亦没试)