Ubuntu12.04編譯vlc-android詳細流程

來源:互聯網
上載者:User

標籤:android   style   blog   http   java   color   

wainiwann出處:http://www.cnblogs.com/wainiwann/本文著作權歸作者所有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文串連,否則保留追究法律責任的權利. 

摘要:本文主要介紹vlc-android在ubuntu下編譯的過程。

 

最近研究了下 vlc-android 的編譯,網上一搜資料確實不少,不過大部分都是千遍一律(也不否認有非常詳細的)。不能說這些都毫無價值,多少也能給編譯vlc帶來一些線索。

編譯環境使用的是64位ubuntu12.04 源碼用的vlc-android最新的源碼。整個編譯過程耗時將近一天,因為網路原因需要下載很多東西,整個vlc源碼達到可編譯條件的時候總大小將近2個G。

還有下載很多其他的編譯需要的資源。最後編譯成功,產生了so庫和相應的apk,並且裝在手機上可以播放流媒體。

下面就詳細總結一下此次編譯vlc-android的整個流程,以備以後所需,以及讓更多需要它的人少走些彎路。

------------------------------------------------------------------------------------------我是黃金分割--------------------------------------------------------------------------------

一 編譯環境搭建:

1.下載配置NDK環境:

本次使用的ndk是 “ android-ndk-r9d-linux-x86_64.tar.bz2 ”

:http://developer.android.com/tools/sdk/ndk/index.html#Installing (有時會打不開)

對於NDK環境搭建可以參考之前的文章ffmpeg2.2編譯:http://www.cnblogs.com/wainiwann/p/3785485.html

裡麵包含瞭解碼目錄,以及NDK環境變數的配置寫的非常詳細。

2.下載配置SDK環境:

編譯的時候需要SDK環境並且需要下載的SDK目錄下需要有“platform-tools”這路目錄下的adb.exe等工具。所以下載的SDK需要注意下!

這裡下載SDK最好不要下載類似 “ android-sdk_r20-linux.tar ” 或者其他版本因為這些版本是不包含 "platform-tools" 這個檔案目錄的!!!

我這裡下載的是包含eclipse 的ADT版本為 “ adt-bundle-linux-x86_64-20131030.zip ” 。

:http://pan.baidu.com/share/link?shareid=2608460318&uk=2099951531 

然後在home目錄下建立一個“develop”的目錄 (之前ndk也是放到這個目錄裡的)。再在develop目錄下建立目錄"android-sdk-linux"目錄(建目錄這一步自己可以隨意)。

然後把 adt-bundle-linux-x86_64-20131030.zip 解壓出來,把裡面的sdk整個目錄下的檔案全拷貝到之前的develop目錄下的android-sdk-linux目錄中。

3.下載配置JDK環境:

如果單純想編譯出vlc的so庫,JDK可以不用安裝和配置。但如果想編譯出vlc的APK那這一步是不能少的!

此處用的jdk是:“ jdk-6u45-linux-x64.bin ”

:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html

點擊Accept License Agreement 選擇需要下載jdk。

這裡說一下關於JDK的安裝:

1)把下載的  jdk-6u45-linux-x64.bin 拷貝到/home目錄下建立一個名字為“jdk”的目錄;

2)終端root賬戶進入上面的jdk目錄給 jdk-6u45-linux-x64.bin 增加許可權:

# chmod 777 ./jdk-6u45-linux-x64.bin

3)執行安裝命令:

# ./jdk-6u45-linux-x64.bin

4.配置NDK、SDK、JDK環境變數:

1)終端root賬戶命令:

# gedit ~/.bashrc

待彈出編輯頁面在頁面末尾添加如下幾行(具體目錄依自己而定):

export NDK=/home/song/develop/android-ndk-r9d
export ANDROID_SDK=/home/song/develop/android-sdk-linux
export ANDROID_NDK=/home/song/develop/android-ndk-r9d
export ANDROID_ABI=armeabi-v7a
export NO_NEON=1
export JAVA_HOME=/home/song/jdk/jdk1.6.0_45
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools:$JAVA_HOME/bin:$JAVA_HOME/jre/bin

2)然後儲存,使其生效 終端命令列:

# source ~/.bashrc

3)檢測環境變數配置是否正確:

ndk可以進入ndk下sample目錄裡的hello-jni進行$NDK/ndk-build 命令編譯。JDK可以在root終端命令下(非root需要在編輯~/.bashrc)執行:java -version 如果顯示JDK相關的

版本號碼則為安裝正確。

 

二 編譯前需要下載安裝的工具:

1.下載安裝 git 工具:

# apt-get install git

2.下載安裝 ant工具:

# apt-get install ant

註:此處下載安裝ant 會一併下載安裝 openJDK,但不影響編譯。

3.下載安裝一下工具:

# apt-get install wget

# apt-get install autoconf

# apt-get install libtool

# apt-get install subversion

註:如果有的安裝不上不用在意。

 

4.下載安裝需要32位編譯的東西:

如果不需要編譯產生apk可以不做此操作。

# apt-get update
# apt-get install ia32-libs

 

三 編譯vlc-android :

1)在home目錄下建立一個目錄這裡取名“vlc-code”目錄。然後root使用者終端命令:

# git clone git://git.videolan.org/vlc-ports/android.git

這裡下載會很快下載之後進入到該目錄,終端命令:

# cd android

2)執行編譯操作:

# sh ./compile.sh

下面將會進入漫長的下載vlc編譯所需要的資源套件。。。。

3)下載中途可能會出現數次錯誤:

由於一些資源套件可能請求下載的時候逾時等都會出現編譯失敗,此時可以查看失敗資訊。一般

失敗資訊上寫著那條資源套件失敗,以及下載該資源的,此時可以換一個網路或者換一個電腦複製那條下載失敗的資源套件,自己手動去下載。

下載之後手動拷貝到該目錄:/vlc-code/android/vlc/contrib/tarballs/ 目錄下。

然後重新在終端執行編譯操作:

# sh ./compile.sh

註:下載過程中可能需要重複步驟3數次。

最後資源套件下載完全之後可以 查看 /vlc-code/android/vlc/contrib/tarballs/ 目錄 下大概有40個如下資源套件:

 

4)如果資源下載結束最後編譯出現

“BUILD SUCESSFUL”

就表示編譯成功了,如果沒有出現該提示,則需要重複編譯操作:

# sh ./compile.sh

註:在vlc編譯過程當中始終是該命令。

如果編譯當中出現其他錯誤,可以查看錯誤資訊,然後在網上尋找答案(如果上述環境搭建,下載安裝等等都正確的話,應該是可以編譯成功的)。

5)編譯成功之後:

成功之後會在

/vlc-code/android/vlc-android/libs/ 目錄下看到編譯好的so庫。

會在

/vlc-code/android/vlc-android/bin/ 目錄下看到編譯好的apk檔案,這裡可以直接安裝在android手機上。

 

四 最後附上編譯成功的:

---------------------------------------------------------------------------------------------------我是黃金分割------------------------------------------------------------------------------------------------------------------------------

完結:編譯過程當中一定要有足夠的耐心和自信!!!

wainiwann出處:http://www.cnblogs.com/wainiwann/本文著作權歸作者所有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文串連,否則保留追究法律責任的權利. 

摘要:本文主要介紹vlc-android在ubuntu下編譯的過程。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.