摘要:本文主要介绍vlc-android在ubuntu下编译的过程。html
最近研究了下 vlc-android 的编译,网上一搜资料确实很多,不过大部分都是千遍一概(也不否定有很是详细的)。不能说这些都毫无价值,多少也能给编译vlc带来一些线索。java
编译环境使用的是64位ubuntu12.04 源码用的vlc-android最新的源码。整个编译过程耗时将近一天,由于网络缘由须要下载不少东西,整个vlc源码达到可编译条件的时候总大小将近2个G。linux
还有下载不少其余的编译须要的资源。最后编译成功,生成了so库和相应的apk,而且装在手机上能够播放流媒体。android
下面就详细总结一下这次编译vlc-android的整个流程,以备之后所需,以及让更多须要它的人少走些弯路。git
------------------------------------------------------------------------------------------我是黄金分割--------------------------------------------------------------------------------ubuntu
一 编译环境搭建:bash
1.下载配置NDK环境:网络
本次使用的ndk是 “ android-ndk-r9d-linux-x86_64.tar.bz2 ”oracle
下载地址:http://developer.android.com/tools/sdk/ndk/index.html#Installing (有时会打不开)eclipse
对于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 ”
点击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相关的
版本号则为安装正确。
二 编译前须要下载安装的工具:
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
注:若是有的安装不上不用在乎。
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手机上。
四 最后附上编译成功的截图:
---------------------------------------------------------------------------------------------------我是黄金分割------------------------------------------------------------------------------------------------------------------------------
完结:编译过程中必定要有足够的耐心和自信!!!
摘要:本文主要介绍vlc-android在ubuntu下编译的过程。