SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

写在前面:本想淅淅沥沥的将sip语音对讲的整个开发过程全部记录下来,但由于工作原因,确实没时间写。这距离上一次使用sip都过去一年多了,再次使用时,稍感陌生,一周使用下来,却发现对源码了解更深。

         这次继续先聊聊编译resiprocate-1.10.2,Windows的就不用说了,直接用VS打开工程文件,直接就编译过了,Linux版本的也简单,这就不说了。现在主要说说在Linux上编译,并适用于安卓。

 

首先:在Linux上配置Android SDK环境:

1、下载地址:http://tools.android-studio.org/index.php/sdk/

注意选择版本:

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

2、在Linux上解压后,解压命令:

tar -zxvf android-sdk_r24.4.1-linux.tgz

备注:我是解压到root下的android目录的。

3、配置环境变量:

vi /etc/profile

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

最后一行加上:

NDKROOT="/root/android/android-ndk-r14b"
export PATH=$NDKROOT:$PATH

4、生效环境变量配置,命令行输入:

source /etc/profile

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

其次:配置resiprocate-1.10.2

  1. 下载地址:https://www.resiprocate.org/files/pub/reSIProcate/releases/

框上的两个文件都要下载:

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

  1. 解压后,将resiprocate-contrib-1.10.2中的contrib目录拷贝至resiprocate-1.10.2

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

放到linux上,

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

  1. 重点步骤来了:
    • 、进入build目录

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

         ②、编辑configure-android.sh文件

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

这里注重注意下这几个项的设置:

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

其中:

export CROSS_VERSION=4.9

export ANDROID_VERSION=24

这两项对应我们在使用这里编译库的项目的JNI中的Application.mk文件

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

一一对应。

export PREFIX=/home/sipvoice/jni/prebuilt

这个选项对应的是我们要将库文件生成后安装到指定目录:如我的是/home/sipvoice/jni/prebuilt

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

③、文件修改完后,开始编译了:

首先执行:

sh configure-android.sh ./../config

,这一步非常重要,要不然在我们使用生成的库时,会出现不匹配

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

其次回到上一次,并执行:

make

注意这里如果我们后面要使用的是这里编译的静态库,需要先执行:

./configure --enable-static=yes --enable-shared=no

然后:执行

make install