作者: 使徒保罗
邮箱:297329588szh@163.com
声明: 欢迎交流学习,如有任何疑问,请通过邮箱联系本人
环境: ubuntu14.04 32位
功能:使用pjsip的信令层,不涉及到音视频数据传输等
源码版本: 2.12
第一步:源码下载
PJSIP - Open Source SIP, Media, and NAT Traversal Library 官方网站自行下载
第二部: 解压源码,编译选项参数配置
tar zxvf pjproject-2.12.tar.gz
cd pjproject-2.12/
./configure -help 查看编译选项,根据自己的需要进行裁剪
本人只需要基本的sip信令,不需要音视频传输,所以进行了裁剪,编译选项配置如下:
./configure --prefix=/home/vast/opensource/pjproject-2.12/build3531a \
CC=/opt/hisi-linux/x86-arm/arm-hisiv300-linux/target/bin/arm-hisiv300-linux-gcc \
--host=arm-hisiv300-linux \
--disable-option-checking \
--disable-FEATURE \
--disable-floating-point \
--disable-floating-point \
--disable-resample \
--disable-sound \
--disable-video \
--disable-small-filter \
--disable-large-filter \
--disable-speex-aec \
--disable-g711-codec \
--disable-l16-codec \
--disable-gsm-codec \
--disable-g722-codec \
--disable-g7221-codec \
--disable-speex-codec \
--disable-ilbc-codec \
--disable-sdl \
--disable-ffmpeg \
--disable-v4l2 \
--disable-openh264 \
--disable-vpx \
--disable-android-mediacodec \
--disable-darwin-ssl \
--disable-ssl \
--disable-opencore-amr \
--disable-silk \
--disable-opus \
--disable-bcg729 \
--disable-libyuv \
--disable-libwebrtc \
--enable-libwebrtc-aec3
第三步: 编译和安装
make
报错
解决办法: #include <execinfo.h> 把相关文件中的包含注释掉,已经使用该头文件中的相关接口也注释掉,pjproject-2.12/pjlib/src/pjlib-test/main.c 修改如下图所示
然后继续make,还是报错
修改pjproject-2.12/pjlib-util/src/pjlib-util-test/main.c 注释相关代码
保存,继续make,报错
注释 /pjproject-2.12/pjnath/src/pjnath-test/main.c相关代码
继续编译,报错:
相同的错误,相同的处理办法,不再一一描述了。
最后编译成功
然后 make install
编译成功后生成相关的头文件和库文件