写在前面:本想淅淅沥沥的将sip语音对讲的整个开发过程全部记录下来,但由于工作原因,确实没时间写。这距离上一次使用sip都过去一年多了,再次使用时,稍感陌生,一周使用下来,却发现对源码了解更深。
这次继续先聊聊编译resiprocate-1.10.2,Windows的就不用说了,直接用VS打开工程文件,直接就编译过了,Linux版本的也简单,这就不说了。现在主要说说在Linux上编译,并适用于安卓。
首先:在Linux上配置Android SDK环境:
1、下载地址:http://tools.android-studio.org/index.php/sdk/
注意选择版本:
2、在Linux上解压后,解压命令:
tar -zxvf android-sdk_r24.4.1-linux.tgz
备注:我是解压到root下的android目录的。
3、配置环境变量:
vi /etc/profile
最后一行加上:
NDKROOT="/root/android/android-ndk-r14b"
export PATH=$NDKROOT:$PATH
4、生效环境变量配置,命令行输入:
source /etc/profile
其次:配置resiprocate-1.10.2
框上的两个文件都要下载:
- 解压后,将resiprocate-contrib-1.10.2中的contrib目录拷贝至resiprocate-1.10.2
放到linux上,
- 重点步骤来了:
- 、进入build目录
②、编辑configure-android.sh文件
这里注重注意下这几个项的设置:
其中:
export CROSS_VERSION=4.9
export ANDROID_VERSION=24
这两项对应我们在使用这里编译库的项目的JNI中的Application.mk文件
一一对应。
export PREFIX=/home/sipvoice/jni/prebuilt
这个选项对应的是我们要将库文件生成后安装到指定目录:如我的是/home/sipvoice/jni/prebuilt
③、文件修改完后,开始编译了:
首先执行:
sh configure-android.sh ./../config
,这一步非常重要,要不然在我们使用生成的库时,会出现不匹配
其次回到上一次,并执行:
make
注意这里如果我们后面要使用的是这里编译的静态库,需要先执行:
./configure --enable-static=yes --enable-shared=no
然后:执行
make install