Ubuntu17.04编译Linphone Android最新版本3.2.8

2 篇文章 0 订阅
2 篇文章 0 订阅

 

(已更新到4.1版本,请看另外一篇文章https://blog.csdn.net/liccon/article/details/89532974

我这次在一个全新的系统上编译Linphone Android最新版本,在Virtual Box虚拟机上安装Ubuntu17.04 64位系统。

1.在Ubuntu系统下创建目录

 

sudo mkdir /data
cd /data
sudo mkdir tools
sudo mkdir projects;


使用sudo chown将目录的所有者修改为你使用的用户。

 

 

2. 安装JDK,下载jdk-8u144-linux-x64.tar.gz到/data/tools

tar -xvf jdk-8u144-linux-x64.tar.gz 解压文件

sudo vi /etc/profile 编辑配置文件,在文件后面加上

export JAVA_HOME=/data/tools/jdk1.8.0_144

export JRE_HOME=$JAVA_HOME/jre

exportCLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

保存后退出,使用source /etc/profile使配置生效,使用java -version检查java是否安装正确。

$ java -version

java version "1.8.0_144"

Java(TM) SE Runtime Environment (build1.8.0_144-b01)

Java HotSpot(TM) 64-Bit Server VM (build25.144-b01, mixed mode)

 

3.安装Android SDK和Android NDK,

现在Google不提供独立的SDK的界面安装工具,独立包SDK只能使用命令行工具来更新,下载sdk-tools-linux-*******.zip解压放到/data/tools/android-sdk下,

进入../android-sdk目录运行

./tools/bin/sdkmanager"build-tools;26.0.2"

./tools/bin/sdkmanager"platforms;android-26"

./tools/bin/sdkmanager"platform-tools"

./tools/bin/sdkmanager"extras;android;m2repository"

./tools/bin/sdkmanager"ndk-bundle"

这种方式下载后的可能在实际运行中可能会导致提示License没有确认无法进行编译,建议使用AndroId-Studio来下载Android SDK,

并且在/etc/profile文件设置路径

export ANDROID_HOME=/data/tools/android-sdk

export ANDROID_NDK=/data/tools/android-sdk/ndk-bundle

export PATH= $PATH:$ ANDROID_HOME /tools:ANDROID_HOME /platform-tools:$ ANDROID_NDK

apt install git 安装git,安装完成后开始clone代码

cd /data/projects

git clone https://github.com/BelledonneCommunications/linphone-android.git--recursive

也可以直接使用Linphone的官方git库,但是国内访问Linphone的官方git库非常慢,因此我这里使用了github上面的镜像。上面的命令只是主模块从github上获取,实际上子模块也需要去linphone.org获取,可以先使用

git clone https://github.com/BelledonneCommunications/linphone-android.git

来获取主模块的代码,然后运行

git submodule init

再打开项目的.git目录的config文件修改相关配置文件,指向github的仓库目录,然后运行

git submodule update

这样会快很多,但是不是所有的子模块在github上面都有镜像,有些还必须要从linphong.org获取。

然后还需要进入submodules/mswebrtc目录,再次执行

 

git submodule init 
git submodule update

 

 

 

请确保所有子模块都正确下载。

 

阅读linphone-android下的readme文件,上面说要安装几个组件yasm,nasm,ant,python,intltoolize,cmake,vim-common.

64位系统还需要安装ia32-libs

可以使用sudo apt install 命令来安装,intltoolize 会提示没有这个包,改为安装intltool,安装ia32-libs会提示已经被lib32ncurses5 lib32z1取代了,我们将这两个也装上,同时将lib32stdc++6也装上。

 

3.编译,

进入linphone-android目录,运行./prepair.py,这里可以加一些参数来打开或者关闭一些功能,如:

./prepair.py -DENABLE_X264=YES 来打开X264的支持

具体可以使用命令./prepare.py --list-features  来检查

然后再直接运行make,成功后即可生成apk文件。

我用Android Studio重新整理了一份代码,so文件已经生成好,直接编译运行即可。

https://github.com/zhanggx/linphone-android.git

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值