编译Linphone-android版本
第一步 获取源代码
Android版本git地址 git clone git://git.linphone.org/linphone-android.git --recursive
第二步、搭建编译Linphone-Android项目的环境
进入linphone-android目录
里面说明的是编译时需要做的事:
1.搭建Android sdk 环境
2.搭建Android ndk 环境
在/etc/profile.d下新建一个类似于development.sh的文件,加上 export JAVA_HOME=/home/luxuan/Program/jdk export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export ANDROID_NDK=/home/luxuan/Program/android-sdk/ndk-bundle export PATH=$ANDROID_NDK:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
上面的路径按照实际情况更改
3.先安装依赖 sudo apt-get install yasm nasm ant intltool cmake vim-common lib32ncurses5 lib32z1 pkg-config
在项目目录里执行脚本 python ./prepare.py
提示下不了andorid gradle plugin的插件,要改成android studio的最新版本。
然后还提示没有local.properties文件,你可以从一个正常的android项目中复制一份,然后改下sdk.dir和ndk.dir的设置即可。
然后输入make开始编译 'pystache' python module not found
于是 sudo apt install python-pip pip install pystache
提示 libudev.h not found Doxygen not found dot program is needed
于是 sudo apt install libudev-dev doxygen graphviz
最后根据README.md的5、6、7、8、9步骤,自行选择自己的编译选项。
如果出现gradle任务失败,可以输入 ./gradlew assembleDebug
来重新编译。
默认只编译arm64-v8a和armeabi-v7a,则输入 python ./prepare.py -c python ./prepare.py armv7 arm64 x86 x86_64
再 make
x86_64的so文件不会自动复制,可以参考提示信息将linphone-sdk/android-x86_64/lib和liblinphone-sdk/android-x86_64/lib/mediastreamer/plugins中的so复制过去即可。
输入 sh WORK/android-x86_64/strip.sh libs/x86_64/*.so