Ubuntu14.04 vlc-for-android 编译过程
2015-06-23 11:56
706 查看
vlc-for-android 编译指南官方网址:https://wiki.videolan.org/AndroidCompile
编译过程中要严格按照官网上的操作步骤来,下面我结合自己的实际操作来总结一下,在 Ubuntu14.04 环境下,从安装 jdk 到最终成功编译 vlc-for-android 的整个过程。
1.
下载安装 jdk1.7
Jdk1.7下载官方网址:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
解压下载好的文件:
$ sudo tar -zxvf jdk-7u79-linux-x64.tar.gz
设置环境变量:
$ sudo gedit /etc/profile
在文档结尾追加:
export JAVA_HOME=/home/lion/storm/jdk1.7/jdk1.7.0_79
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ANDROID_NDK:$PATH
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
设置完成后执行:source /etc/profile 重新加载环境变量
将系统默认的java修改过来:
$ sudo update-alternatives --install /usr/bin/javajava/home/lion/storm/jdk1.7/jdk1.7.0_79/bin/java 300
$ sudo update-alternatives --install /usr/bin/javacjavac/home/lion/storm/jdk1.7/jdk1.7.0_79/bin/javac 300
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
设置完成,检测一下有没有问题,在命令行输入:
$ java -version
如果命令行显示以下内容,则说明安装配置成功:
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
2. 下载安装 android studio
下载完成后,解压:$ sudo unzip android-studio-ide-141.1890965-linux.zip
(解压后文件夹名为android-studio)
然后进入 android-studio/bin/ 目录,执行 sudo ./studio.sh 就可以打开 android studio 了。
3.
下载安装 NDK
官方地址:https://developer.android.com/tools/sdk/ndk/index.html
最新版本为 android-ndk-r10b-linux-x86_64.bin
安装好后,配置NDK环境变量
root@ubuntu:~#sudo gedit /etc/profile
在该文件最后面添加(注意自己安装的目录,对应更改就行了)
export ANDROID_NDK=/home/lion/storm/android-dev/android-ndk-r10e/android-ndk-r10e
export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools:$ANDROID_NDK
然后保存退出,执行 source 命令重新加载环境变量:
source /etc/profile
测试 NDK 编译
进入 NDK 安装目录下 samples/hello-jni,在该目录下执行 ndk-build,如果安装配置没问题,那么会打印出如下信息:
... ...
[armeabi] Install : libhello-jni.so => libs/armeabi/libhello-jni.so
[x86] Install : libhello-jni.so => libs/x86/libhello-jni.so
[mips] Install : libhello-jni.so => libs/mips/libhello-jni.so
4. 安装一些工具:
注意:
(1)如果你要给 Android-x86 设备编译 vlc,那你还要安装 yasm;
(2)对于 64 位系统:还要安装下面这些 32-bit 的 libraries,因为预编译过程需要它们
如果你是在老版本的 Ubuntu 上编译,还要安装 ia32-libs
5. clone vlc 源码
进入 android sdk 的根目录(注意是 sdk 的根目录,不是 sources 目录哦,不要以为要 clone 源码,所以要到 sources 下进行),执行以下命令抓取 vlc 源码
这个下载过程可能会花较时间。等到下载完成后,进入 android 目录(下载完成后,会在 sdk 的根目录下生成一个 android 文件夹,下载下来的东西都在里面),执行编译命令 sh
./compile.sh 就可以开始整个编译过程了。编译成功后,会生成相应的 .so 文件及 apk 文件。
6.
编译问题
在编译的过程中,可能会出现一些错误,如果配置正确的话,不会出现那么多错误的。要是你编译的过程出频频出错,那么就要注意一下你的配置问题了。下面列出最常见的错误:
(1)
修改 compile.sh at Line 81(把 81 行换成下面两句)
wget ${GRADLE_URL} 2>/dev/null || curl -O ${GRADLE_URL}
=>wget ${GRADLE_URL} 2>/dev/null || curl -O -L ${GRADLE_URL}
(2)安装的过程中,编译器会自动下载一些依赖文件,有些文件是 google 上的,下载不了(一般情况下,只有 openjpeg 和 protobuf 的下载会有问题)。这些依赖文件通常都是要放到
../vlc/contrib/tarballs 目录下的,你要自己翻墙下载,然后放到这个目录下,再执行 sh ./compile.sh 就行了。
最后附上编译成功截图
编译过程中要严格按照官网上的操作步骤来,下面我结合自己的实际操作来总结一下,在 Ubuntu14.04 环境下,从安装 jdk 到最终成功编译 vlc-for-android 的整个过程。
1.
下载安装 jdk1.7
Jdk1.7下载官方网址:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
解压下载好的文件:
$ sudo tar -zxvf jdk-7u79-linux-x64.tar.gz
设置环境变量:
$ sudo gedit /etc/profile
在文档结尾追加:
export JAVA_HOME=/home/lion/storm/jdk1.7/jdk1.7.0_79
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ANDROID_NDK:$PATH
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
设置完成后执行:source /etc/profile 重新加载环境变量
将系统默认的java修改过来:
$ sudo update-alternatives --install /usr/bin/javajava/home/lion/storm/jdk1.7/jdk1.7.0_79/bin/java 300
$ sudo update-alternatives --install /usr/bin/javacjavac/home/lion/storm/jdk1.7/jdk1.7.0_79/bin/javac 300
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
设置完成,检测一下有没有问题,在命令行输入:
$ java -version
如果命令行显示以下内容,则说明安装配置成功:
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
2. 下载安装 android studio
下载完成后,解压:$ sudo unzip android-studio-ide-141.1890965-linux.zip
(解压后文件夹名为android-studio)
然后进入 android-studio/bin/ 目录,执行 sudo ./studio.sh 就可以打开 android studio 了。
3.
下载安装 NDK
官方地址:https://developer.android.com/tools/sdk/ndk/index.html
最新版本为 android-ndk-r10b-linux-x86_64.bin
安装好后,配置NDK环境变量
root@ubuntu:~#sudo gedit /etc/profile
在该文件最后面添加(注意自己安装的目录,对应更改就行了)
export ANDROID_NDK=/home/lion/storm/android-dev/android-ndk-r10e/android-ndk-r10e
export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools:$ANDROID_NDK
然后保存退出,执行 source 命令重新加载环境变量:
source /etc/profile
测试 NDK 编译
进入 NDK 安装目录下 samples/hello-jni,在该目录下执行 ndk-build,如果安装配置没问题,那么会打印出如下信息:
... ...
[armeabi] Install : libhello-jni.so => libs/armeabi/libhello-jni.so
[x86] Install : libhello-jni.so => libs/x86/libhello-jni.so
[mips] Install : libhello-jni.so => libs/mips/libhello-jni.so
4. 安装一些工具:
sudo apt-get install autoconf automake ant autopoint cmake build-essential libtool m4 patch pkg-config protobuf-compiler ragel subversion unzip git
注意:
(1)如果你要给 Android-x86 设备编译 vlc,那你还要安装 yasm;
(2)对于 64 位系统:还要安装下面这些 32-bit 的 libraries,因为预编译过程需要它们
sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install zlib1g:i386 libstdc++6:i386 libc6:i386
如果你是在老版本的 Ubuntu 上编译,还要安装 ia32-libs
sudo apt-get install ia32-libs
5. clone vlc 源码
进入 android sdk 的根目录(注意是 sdk 的根目录,不是 sources 目录哦,不要以为要 clone 源码,所以要到 sources 下进行),执行以下命令抓取 vlc 源码
git clone git://git.videolan.org/vlc-ports/android.git
这个下载过程可能会花较时间。等到下载完成后,进入 android 目录(下载完成后,会在 sdk 的根目录下生成一个 android 文件夹,下载下来的东西都在里面),执行编译命令 sh
./compile.sh 就可以开始整个编译过程了。编译成功后,会生成相应的 .so 文件及 apk 文件。
6.
编译问题
在编译的过程中,可能会出现一些错误,如果配置正确的话,不会出现那么多错误的。要是你编译的过程出频频出错,那么就要注意一下你的配置问题了。下面列出最常见的错误:
(1)
1 2 3 4 5 6 7 8 9 10 11 12 13 | $ sh compile.sh *** No ANDROID_ABI defined architecture: using ARMv7 Downloading gradle % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 354 100 354 0 0 455 0 --:--:-- --:--:-- --:--:-- 455 Archive: gradle-2.2.1-all.zip End-of-central-directory signature not found. Either this fileis not a zipfile, or it constitutes one disk of a multi-part archive. In the latter casethe central directory and zipfile comment will be found on the last disk(s) of this archive. unzip: cannot findzipfile directory inone of gradle-2.2.1-all.zip or gradle-2.2.1-all.zip.zip, and cannot findgradle-2.2.1-all.zip.ZIP, period. |
wget ${GRADLE_URL} 2>/dev/null || curl -O ${GRADLE_URL}
=>wget ${GRADLE_URL} 2>/dev/null || curl -O -L ${GRADLE_URL}
(2)安装的过程中,编译器会自动下载一些依赖文件,有些文件是 google 上的,下载不了(一般情况下,只有 openjpeg 和 protobuf 的下载会有问题)。这些依赖文件通常都是要放到
../vlc/contrib/tarballs 目录下的,你要自己翻墙下载,然后放到这个目录下,再执行 sh ./compile.sh 就行了。
最后附上编译成功截图
相关文章推荐
- Ubuntu 默认壁纸历代记
- Ubuntu Remix Cinnamon 20.04 评测:Ubuntu 与 Cinnamon 的完美融合
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 关于Ubuntu 11.10启动提示waiting for the network configuration的问题
- 在 Ubuntu 桌面中使用文件和文件夹
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置