linphone-android 编译

一:到网站上下载linphone-android的源码:
http://www.linphone.org/eng/download/git.html

linphone-android对应的git地址是:

在虚拟机中敲入如下命令
git clone git://git.linphone.org/linphone-android.git --recursive  
记住一定要把rescursive给带上,否则下不全,下载完后大概有300M左右.


二:配置相关的编译环境

下载后首先看里面的readme.

1) download the Android ndk (>=r5c) from google.
我个人是android-ndk-r7c的最新版本.(如何安装NDK可以在本文件夹中找到)

2) install the autotools: autoconf, automake, aclocal, libtoolize,pkgconfig
这几个花费了我一上午的时间。

其实用apt-get install就可以搞定了。

sudo apt-get install autools-dev 可以自动帮你安装autoconf,automake,aclocal.
然后libtoolize的安装,不要想当然的用 sudo apt-get install libtoolize

正确的指令是: sudo apt-get install libtool

pkg-config系统自带的。

检测相关命令是否已经安装成功:
which autoconf(which命令是会查找PATH所指向的东西,找出它的路径所在)
成功会显示命令的路径

(3)把sdk目录下的platform-tools 和tools 文件夹拷贝到linphone-android源码的根目录;

(4)把ndk路径导入环境变量,例如: export PATH=$PATH:~/linphone/android-ndk-r8d

三:编译linphone-android
(1)
上面的搞定后,开始执行./prepare_sources.sh这个时候呢,(在这里我是碰到问题的)

    问题:

    1:提示说ndk的路径不正确

        在 /etc/environment中加上你自己的ndk的路径,我的如下

        PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/hnzzh/huzi/linphone/linphone-android/package/android-ndk-r8"

然后source /etc/enviroment重启,假如你使用如下命令:which ndk-build能看到nkd-build所在的路径,说明就没问题了.

   2:在./prepare_sources.sh时会提示有关ndk权限的问题,所以需要把ndk所有包括子目录都改成777权限

   编译完成后会提示如下信息:

    patching file Makefile
    Hunk #1 succeeded at 47 with fuzz 2 (offset 21 lines).


(2)然后再使用如下命令   ndk-build

安装完毕后会提示如下信息:

Compile thumb  : linphonenoneon <= ec-calibrator.c
SharedLibrary  : liblinphonearmv5.so
Install        : liblinphonearmv5.so => jni/..//libs/armeabi/liblinphonearmv5.so

这个时候等给3分钟左右,编译就成功了,然后libs目录下就有已经编译好的各种 so了。
armeabi/liblinphone.so
armeabi-v7a/libavcodec.so,libavcore.so,libavutil.so,liblincrypto.so,liblinphone.so,liblinssl.so,libsrtp.so,libswscale.so!

到这里,整个linphone安装结束,接下来就是用Eclipse导入!

四:Eclipse导入

(1)eclipse导入android工程

把linphone_android的目录,在eclipse中import导入! 

假如是在Ubuntu的eclipse需要把所有的@Override 去掉

你可能感兴趣的:(linphone-android 编译)