1:你需要安装的工具 :
pjsip:http://www.pjsip.org/ (在这里有window和linux下面的两个版本,两个都下载,用linux的那个)
msys2:http://www.msys2.org/ (这个是用来在window下面执行gcc和Linux下面的命令)
swig:http://swig.org/ (这个是用来把c的代码包装成java的接口,在Android里面调用)
ndk:https://developer.android.google.cn/ndk/downloads/ (ndk的版本需要下载r13b这个版本,如果你下载的其他高版本的ndk,使用的是clang的编译器会导致各种问题无法编译,r18之后官网说会移除gcc编译器)
android sdk:https://developer.android.google.cn/studio/preview/ (这个是不用翻墙的网站可以下载android studio 里面自带的sdk)
android studio:https://developer.android.google.cn/studio/preview/
java sdk:http://www.oracle.com/technetwork/java/javase/downloads/index.html (直接下载,配置好 java_home环境变量)
配置:
JAVA_HOME配置java的安装路径,android sdk感觉在android studio里面配置一下就行了,pjsip直接解压就好了,ndk也是直接解压。
msys2的配置根据官网上的信息就是升级一下本地的数据库然后就是安装gcc
命令 :pacman Sl | grep gcc
msys2有三个不同的执行环境:mingw64,mingw32,msys2,根据你的电脑选择安装gcc,我是全都装了一遍,之后安装make,swig。使用命令pacman -S安装这些软件。
编译pjsip:
接下来就是需要编译pjsip,打开mingw64.exe,在pjsip工程里面G:\pjproject-2.7.2\pjlib\include\pj新建一个config_site.h如果你只是编译这个平台下,就可以里面全是空的,如果是android下面的就添加以下内容:
#define PJ_CONFIG_ANDROID 1
#include <pj/config_site_sample.h>
添加完后就可以开始编译程序了
1: 进入项目根目录 配置ndk 环境
export ANDROID_NDK_ROOT=D:/android-ndk-r13b
2:配置要编译的平台工具 和编译出的 内核版本
APP_PLATFORM=android-23 TARGET_ABI=arm64-v8a ./configure-android --use-ndk-cflags
3:开始编译
make dep && make clean && make
4:编译出Android 工程
进入到项目/pjproject-2.10/pjsip-apps/src/swig目录下 执行make 命令 执行成功