1. 程式人生 > >linphone-android 編譯

linphone-android 編譯

在虛擬機器中敲入如下命令
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 去掉

相關推薦

no