ubuntu 12.04編譯vlc詳細過程
本文介紹ubuntu下android-vlc編譯的過程,主要記錄了編譯過程中碰的到問題及解決方案,如果可以為其他人編譯vlc提供幫助,將是我的榮幸。
一 編譯環境搭建:
1.下載配置NDK環境:
使用版本android-ndk-r9
下載地址:http://www.126disk.com/fileview_1441036.html
2.下載配置SDK環境:
使用版本:adt-bundle-linux-x86-20140702.zip
將壓縮包解壓到/opt目錄下就可以。
3.安裝JDK環境
使用版本:jdk1.7.0_71
安裝至/opt目錄下
4.設定NDK,SDK,JDK環境變數
編輯環境變數設定指令碼:vim env.sh
#!/bin/sh
export JAVA_HOME=/opt/jdk1.7.0_71
export JRE_HOME=/opt/jdk1.7.0_71/jre
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin:$ANT_HOME
export NO_NEON=1
export ANDROID_SDK=/opt/adt-bundle-linux-x86-20140702/sdk
export ANDROID_NDK=/opt/android-ndk-r9
export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools
export ANDROID_ABI=armeabi-v7a
編輯完成後,設定變數:source env.sh
二 編譯前需要下載安裝的工具:
0.安裝編譯vlc依賴的其他庫:
$ sudo apt-get build-dep vlc
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
# apt-get install xfig
# apt-get install texinfo
有些版本可能需要安裝automake-1.13,aclocal-1.13版本,直接將automake-1.13連結到automake也可以
ln -s automake automake-1.13
三 編譯vlc-android
1. 新建一個編譯目錄
mkdir ~/vlc-android
cd ~/vlc-android
2. 下載原始碼
git clone git://git.videolan.org/vlc-ports/android.git
3.開始編譯
sh compile.sh
下面開始比較長時間的編譯,因為需要下載和安裝vlc原始碼和第三方的軟體,比如音視訊解碼ffmpeg等
4.可能出現的編譯錯誤
下載第三方軟體可能出現超時等下載失敗,這時會中斷編譯,最好是失敗後,將失敗時顯示的下載地址輸入瀏覽器,用瀏覽器下載後,拷貝到目錄~/vlc-android/android/vlc/contrib/tarballs
LibVNCServer-0.9.9.tar.gz libdvbpsi-1.2.0.tar.bz2 libmodplug-0.8.8.5.tar.gz nettle-2.7.1.tar.gza52dec-0.7.4.tar.gz libdvdcss-1.3.0.tar.bz2 libmpeg2-0.5.1.tar.gz openjpeg-1.5.0.tar.gz
ffmpeg-HEAD.tar.gz libdvdnav-5.0.1.tar.bz2 libogg-1.3.2.tar.xz opus-1.1.tar.gz
flac-1.3.0.tar.xz libdvdread-5.0.0.tar.bz2 libpng-1.6.12.tar.xz postproc-git.tar.gz
freetype-2.5.3.tar.gz libebml-1.3.0.tar.bz2 libssh2-1.4.3.tar.gz protobuf-2.5.0.tar.bz2
fribidi-0.19.6.tar.bz2 libgcrypt-1.6.2.tar.bz2 libtheora-1.1.1.tar.xz protobuf-2.6.0.tar.bz2
gettext-0.19.2.tar.gz libgpg-error-1.15.tar.bz2 libtool-2.4.2.tar.gz ragel-6.8.tar.gz
gmp-6.0.0.tar.bz2 libgsm_1.0.13.tar.gz libvorbis-1.3.4.tar.xz speex-git.tar.gz
gnutls-3.2.17.tar.xz libiconv-1.14.tar.gz libxml2-2.9.1.tar.gz speexdsp-git.tar.gz
jpegsrc.v9a.tar.gz libmad-0.15.1b.tar.gz live.2014.07.25.tar.gz taglib-1.9.1.tar.gz
libass-0.11.2.tar.gz libmatroska-1.4.1.tar.bz2 mpg123-1.21.0.tar.bz2 zlib-1.2.8.tar.gz
5.編譯完成
看到如下資訊就表示編譯完成了
debug:
BUILD SUCCESSFUL
Total time: 1 minute 3 seconds
我是使用的VLC程式碼工程:
連結:http://pan.baidu.com/s/1mgolVCW 密碼:2bk3
附錄:
編譯過程中可能還會遇到的問題
1) libtool錯誤
因為vlc編譯的許多工具都是自行下載後編譯,因此出現libtool提示錯誤,可能是由於沒有安裝libtool,注意這不是說系統沒有安裝,而是下載後安裝的libtool沒有將庫檔案拷貝安裝到vlc指定的目錄,導致編譯時沒有找到相關的環境。出現此類錯誤,需要下載
libtool壓縮包,版本號從~/vlc-android/vlc/extras/tools/packages.mak中查詢,用瀏覽器下載到此目錄,然後解壓縮後編譯
cd libtool-2.4.2
./bootstrap
./configure
make & make install
這樣編譯後只是安裝到了系統的目錄下,並沒有安裝到vlc指定目錄下,因此需要將安裝在系統目錄下的檔案拷貝到~/vlc-android/vlc/extras/tools/build/目錄下
如下:
[email protected]:~/vlc-android/vlc/extras/tools/build$ tree -d
.
|-- bin
|-- doc
| `-- cmake-2.8
| |-- cmcompress
| |-- cmcurl
| |-- cmexpat
| |-- cmlibarchive
| |-- cmsys
| `-- cmzlib
|-- include
| |-- google
| | `-- protobuf
| | |-- compiler
| | | |-- cpp
| | | |-- java
| | | `-- python
| | |-- io
| | `-- stubs
| `-- libyasm
|-- lib
| `-- pkgconfig
|-- man
| `-- man1
`-- share
|-- aclocal
| `-- internal
|-- aclocal-1.14
| `-- internal
|-- autoconf
| |-- Autom4te
| |-- autoconf
| |-- autoscan
| |-- autotest
| `-- m4sugar
|-- automake-1.14
| |-- Automake
| `-- am
|-- cmake-2.8
| |-- Modules
| | |-- CMakeAddFortranSubdirectory
| | |-- Compiler
| | |-- CompilerId
| | |-- FindCUDA
| | |-- FortranCInterface
| | | `-- Verify
| | |-- IntelVSImplicitPath
| | `-- Platform
| |-- Templates
| |-- completions
| |-- editors
| | |-- emacs
| | `-- vim
| `-- include
|-- doc
| |-- automake
| |-- pkg-config
| `-- ragel
|-- info
|-- libtool
| |-- config
| `-- libltdl
| |-- libltdl
| `-- loaders
`-- man
|-- man1
`-- man7
67 directories
[email protected]:~/vlc/android/vlc/extras/tools/build$
2) BUILD FAILED
/opt/adt-bundle-linux-x86-20140702/sdk/tools/ant/build.xml:542: Unable to resolve project target 'android-19'
碰到這個問題,其實很簡單,是因為SDK沒有安裝相應的API版本
進入/opt/adt-bundle-linux-x86-20140702/sdk/tools,執行sudo ./android
注意:一定要sudo,否則沒有許可權安裝
選擇需要安裝的版本號,可以從~/vlc-android/vlc-android/project.properties中檢視target=android-19
安裝完成後,重新sh compile.sh就可以了
3)編譯mpg123
編譯vlc/modules/codec/mpg123.c最後發生連結錯誤,mpg123_close等函式連結失敗
如果暫時不用mpg123編碼,將連結失敗的地方都註釋後編譯就可以了。
相關推薦
ubuntu 12.04編譯vlc詳細過程
本文介紹ubuntu下android-vlc編譯的過程,主要記錄了編譯過程中碰的到問題及解決方案,如果可以為其他人編譯vlc提供幫助,將是我的榮幸。 一 編譯環境搭建: 1.下載配置NDK環境: 使用版本android-ndk-r9 下載地址:http://www.12
ubuntu 12.04編譯及除錯linux-0.11
(更新中.....) 最近開始研究linux-0.11,編譯過程就遇到各種奇葩情況......好不容易編譯通過了....可是還是不能載入執行.... 下面是我學習過程記錄: 1.開始我用gcc-3.2.2-5.i386.rpm編譯linux-0.11, 你也知道rpm包在u
MySQL5.6.12原始碼編譯安裝詳細過程
本人轉自:http://blog.csdn.net/mchdba/article/details/35994251 1 下載安裝包download tar.gz wget http://download.csdn.net/detail/mchdba/7545037 ps:
Ubuntu 12.04 編譯核心步驟 + Fedora 10 編譯核心步驟(圖)
MPlayer-1.0rc4.tar.gzhttp://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc4.tar.gz all-20110131.tar.bz2http://www.mplayerhq.hu/MPlaye
Ubuntu 12.04嵌入式交叉編譯環境arm-linux-gcc搭建過程圖解
安裝前的絮叨 首先簡單介紹一下,所謂的搭建交叉編譯環境,即安裝、配置交叉編譯工具鏈。在該環境下編譯出嵌入式Linux系統所需的作業系統、應用程式等,然後再上傳到目標機上。 交叉編譯工具鏈是為了編譯、連結、處理和除錯跨平臺體系結構的程式程式碼。對於交叉開發的工具鏈來說,在檔名稱上加了一個字首,用來區別本地的
ubuntu-12.04.5下編譯openjdk8
1、下載jdk1.7並配置相關環境變數 輸入如下命令開啟檔案: gedit ~/.bashrc 在.bashrc檔案末尾假如如下語句: #java jdk configuration export JAVA_HOME=/usr/lib/j
【轉】Ubuntu 12.04上安裝和配置Postfix郵件服務詳細教程
原文網址 https://yq.aliyun.com/ziliao/29593 郵件伺服器配置之所以麻煩是因為需要了解很多東西,牽涉到域名服務 DNS/Bind,Web 收發郵件 Apache/PHP/MySQL/SquirrelMail,認證服務 LDAP, Ker
ubuntu 12.04(gcc降級)編譯android程式碼遇到"_FORTIFY_SOURCE"的解決方法
一、編譯報錯 external/yaffs2/yaffs2/yaffs_tagsvalidity.h:23:6: warning: redundant redeclaration of ‘yaffs_InitialiseTags’ [-Wredundant-decls]
ubuntu 12.04 64位安裝KLEE過程中遇到的問題
問題一:llvm-gcc -v顯示gcc-4.6.3 情況:Ubuntu 12.04 64bit系統安裝後,修改為bupt的源,然後sudo apt-get update。當時網路環境不好,官網llvm-gcc 4.2版本無法下載,於是就sudo ap
ubuntu 12.04下編譯安裝nginx-1.9.3之後 tomcat叢集
一、tomcat安裝 1.安裝nginx 請檢視http://blog.csdn.net/liangzi4454/article/details/47023447 2. jdk安裝不在贅述,不會的同學,可以網上查詢教程; 3. tomcat下載
在Ubuntu 12.04 64bit搭建Android編譯環境後,重啟卡住在Ubuntu logo,進不了圖形介面
搭建android編譯環境,先要安裝以下包: sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 \
UBUNTU 12.04下傻瓜式簡單安裝arm-linux-gcc等gnu arm toolchain交叉編譯工具
歡迎轉載,轉載時請保留作者資訊,謝謝。 1. 驗證無誤的工具鏈安裝(能正常編譯linux,busybox等): 可以去這個地址下載工具鏈,是作者上傳的,要2分,當是辛苦分了,要免費的可以去min2440官網下載,地址我在下面也貼出來了。 CSDN下載連結:htt
Ubuntu 12.04軟體中心安裝flash外掛過程失敗解決辦法
Ubuntu12.04軟體中心安裝flash外掛過程失敗解決辦法 安裝了Ubuntu12.04後,我使用火狐瀏覽器登入百度文庫搜一些介紹curses庫的資料,發現瀏覽器沒有flash外掛,這時貼心的火狐娘提示我安裝缺失外掛,於是就按照提示更新外掛,在安裝嚮導中,我選擇了ad
Linux - Ubuntu中文輸入法安裝(Ubuntu 12.04)
就會 strong end alt con soft 鍵盤 linux 過程 Ubuntu中文輸入法安裝(Ubuntu 12.04)本文地址:http://blog.csdn.net/caroline_wendyUbuntu作為Linux常見的操作系統,是須要熟練使用的。
Ubuntu 12.04 安裝Tomcat7
選擇 ubun 成功 rtu 配置 宋體 pac nload ria 1.下載Tomcat7 打開Tomcat官網 http://tomcat.apache.org,在左邊的導航欄的“Download"中找到Tomcat7.0目錄,點擊後進入Tomcat7的頁面,選擇
制作U盤啟動盤將Ubuntu 12.04升級為14.04的方法
windows ins u盤啟動 live use 版本 radi 啟動盤 ubunt 1 介紹 在周六的下午,我決定想高速瀏覽一下書籍[1]。看看這個關於Ubuntu的聖經到底在講什麽東東。感覺講的不錯,當我看到介紹文件標記語言—TeX和LaTeX的時候,該
Ubuntu 16.04 編譯安裝 ss
ast logs sha timeout odi http end ibm 大小 在網上沒有找到合適的適合ubuntu的ss客戶端, 考慮到ss的編譯安裝其實就帶了ss-local這樣的客戶端, 於是在Ubuntu下編譯安裝了ss. 首先去github上下載最新的安裝包 h
制作ubuntu 12.04鏡像
guest ret 啟動 mod apt virtio figure ssh 錯誤 #啟動UFW防火墻 sudo ufw enable #允許所有的外部IP訪問本機的22/tcp (ssh)端口 sudo ufw allow 22/tcp 在
ubuntu 12.04 簡單配置samba服務,實現主機與虛擬機互通(設置Windows虛擬盤)
完成 sam inux ... conf restart bridged 要求 system 環境: virtualbox ubuntu12.04 首先,如果你到這步了,說明你的window與linux的網絡已經配好了,他們之間是可以互相Ping通的,如果沒有,請看我以
Ubuntu 16.04 Server 版安裝過程圖文詳解
安裝ununtu16.04.3首先,我們會進入系統安裝的第一個界面,開始系統的安裝操作。每一步的操作,左下角都會提示操作方式!1.選擇系統語言-English2.選擇操作-Install Ubuntu Server3.選擇安裝過程和系統的默認語言-English4.選擇區域-othe5.選擇亞洲-Asia6.