ubuntu下linphne-android的編譯

ubuntu 下linphone-android的編譯過程
編譯環境:
ubuntu 10.04(32位的系統)
編譯工具:




1.android-ndk-r8e-linux-x86.tar.bz2(http://developer.android.com/tools/sdk/ndk/index.html)
2.adt-bundle-linux-x86-20130717.zip(http://developer.android.com/sdk/index.html)
3.linphone-android(git clone git://git.linphone.org/linphone-android.git --recursive)
4. jdk-7u25-linux-i586.tar.gz(http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html)
5. apache-ant-1.9.2-bin.tar.gz (http://ant.apache.org/bindownload.cgi)


編譯環境搭建步驟(根據自己系統創建目錄):
1.安裝JDK
1).在root下創建SOFT安裝軟件目錄,然後創建jDK目錄;
2).把jdk解壓到、/root/SOFT/JDK/jdk-7u25-linux-i586
3).設置jdk的環境變量
  1>用gedit打開環境變量配置文件profile文件,具體命令如下:
   gedit /etc/profile
  2>具體環境便令設置命令:
   export JAVA_HOME=/root/SOFT/JDK/jdk-7u25-linux-i586
   export PATH="$PATH:/JAVA_HOME/bin"
  3>根據自己系統創建的目錄進行設置相應的環境目錄,然後保存,使設置環境變量立即生效,具體命令分:
   source /etc/profile(如果不成功可以重啓一下系統)  
2.安裝NDK
1).同jdk安裝的步驟類似,在SOFT目錄下創建NDK目錄
2).把ndk解壓到、/root/SOFT/android-ndk-r8e-linux-x86
3). 設置NDK的環境變量,在profile文件中添加ndk的解壓目錄,具體命令:
    export PATH="$PATH:/JAVA_HOME/bin:/root/SOFT/android-ndk-r8e-linux-x86"
 注意沒添加一個環境便令要用分號隔開
3.安裝Android中SDK中toos和platform-tools,並添加到環境變量
1)在這裏我通過下載adt-bundle-linux-x86-20130717.zip這個開發包來下載的,這個包裏面包含Android的開發工具eclipse和Android SDK
2) 通過Android Eclipse 下在這兩個工具,並把相依的sdk下載下來,便於開發;
3)設置toos和platform-tools到環境變量中(設置環境便令的步驟同上)
4.安裝ant
1).在命令行中直接輸入:
   apt-get install ant 
2).如果在編譯出現ant版本太低,需要安裝更高的ant版本。出現錯誤:
the Android Ant-based build system requires Ant 1.8.0 or later. Current version is 1.7.1
那就到ant官網下載最新版本的ant  apache-ant-1.9.2-bin.tar.gz 
3).下載到最新版的ant後,我們把他解壓到一個目錄下,假設我們把他解藥到SOFT目錄下apache-ant-1.9.2-bin
4).然後把apache-ant-1.9.2-bin目錄下的所有文件替換掉 /usr/share/ant目錄下的所有文件具體命令
   mv /root/SOFT/apache-ant-1.9.2-bin/* /usr/share/ant
5.按照目錄中的README文件說明安裝一些要用到的工具,具體命令如下:
  1).apt-get install autoconf
  2).apt-get install automake
  3).apt-get install aclocal
  4).apt-get install libtoolize
  pkgconfig 是系統自帶的不用安裝了 


6。把linphone-android通過git工具下載到SOFT目錄下大概500多兆的樣子
1)進入到linphone-android目錄下直接make就行,順利的話會直接編譯通過。在bin目錄下生成相應的linphone-debug.apk文件以及在libs生成相應的.so庫文件
2).出現錯誤的話 那就google了
3).可能出現錯誤以及修改:
  1>錯誤1,make時可能出現的錯誤:
Archive:  ./SILK_SDK_SRC_v1.0.8.zip  
replace SILK_SDK_SRC_v1.0.8/SILK_SDK_SRC_ARM_v1.0.8/Makefile? [y]es, [n]o, [A]ll, [N]one, [r]ename: A  
  inflating: SILK_SDK_SRC_v1.0.8/SILK_SDK_SRC_ARM_v1.0.8/Makefile    
...  
caution: filename not matched:  SILK_SDK_SRC_v1.0.8/SILK_SDK_SRC_ARM_v1.0.8/test_vectors  
make[1]: *** [SILK_SDK_SRC_v1.0.8] Error 11  
make[1]: Leaving directory `/mnt/wifi-player/wifi-audio/linphone-android/submodules/mssilk/sdk'  
SILK audio plugin prepare state failed.  
直接修改submodules/mssilk/sdk/Makefile,把解壓zip的命令去掉即可: 
$(silk_src_dir): #$(silk_extracted_directory)                                                                                                               
    cp $(srcdir)/patch_pic.diff $(silk_src_dir)  

    cd $(silk_src_dir) && $(PATCH) -p0 < patch_pic.diff  


最後在Android中自帶的編譯工具ADT中加載編譯成功的linphone-android項目,可以成功編譯,並部署到模擬器、或真機上運行,創建一個SIP帳號就實現可以視頻,通話、聊天功能了  。你也可以定製開發自己的Linphone程序了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章