编译前的准备工作 :
设置ubuntu与Windows 拖放功能
“设备”——>”拖放“——>"双向"
ubuntu 翻墙工具 :
lantern-installer-beta-64-bit
下载地址:http://fazero.cc/archives/584
一 编译环境搭建:
1.下载配置NDK环境:
本次使用的ndk是 “ android-ndk-r11c-linux-x86_64 ”
2.下载配置SDK环境:
我这里下载的是包含eclipse 的ADT版本为 “ adt-bundle-linux-x86_64-20131030.zip ” 。
3.下载配置JDK环境:
此处用的jdk是:“jdk-8u77-linux-x64.tar”
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
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
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
注:如果有的安装不上不用在意。
三 编译vlc-android :
1)在home目录下新建一个目录这里取名“vlc-code”目录。然后root用户终端命令:
# git clone https://code.videolan.org/videolan/vlc-android.git
这里下载会很快下载之后进入到该目录,终端命令:
# cd android
2)执行编译操作:
# sh ./compile.sh
下面将会进入漫长的下载vlc编译所需要的资源包。。。。
3)下载中途可能会出现数次错误:
由于一些资源包可能请求下载的时候超时等都会出现编译失败,此时可以查看失败信息。一般
失败信息上写着那条资源包失败,以及下载该资源的下载地址,此时可以换一个网络或者换一个电脑复制那条下载失败的资源包下载地址,自己手动去下载。
下载之后手动拷贝到该目录:/vlc-code/android/vlc/contrib/tarballs/ 目录下。
然后重新在终端执行编译操作:
# sh ./compile.sh
注:下载过程中可能需要重复步骤3数次。
4)如果资源下载结束最后编译出现
“BUILD SUCESSFUL”
就表示编译成功了,如果没有出现该提示,则需要重复编译操作:
# sh ./compile.sh
注:在vlc编译过程当中始终是该命令。
如果编译当中出现其他错误,可以查看错误信息,然后在网上寻找答案(如果上述环境搭建,下载安装等等都正确的话,应该是可以编译成功的)。
5)编译成功之后:
成功之后会在
/vlc-code/android/vlc-android/libs/ 目录下看到编译好的so库。
会在
/vlc-code/android/vlc-android/bin/ 目录下看到编译好的apk文件,这里可以直接安装在android手机上。
编译中遇到的问题 :
1、如果遇到ssl请求失败
log上面有显示下载失败的地址 手动下载该库 放到vlc/contrib/tarballs/
2、出现下面的问题 就是因为sdk 或者 ndk路径的问题 检查一下是否正确
FAILURE: Build failed with an exception.
* Where:
Build file '/home/edouard/3DSoundLabs/android/android/build.gradle' line: 16
* What went wrong:
A problem occurred evaluating root project 'android'.
> Failed to apply plugin [id 'android-sdk-manager']
> Specified SDK directory './3DSoundLabs/android/android-sdk-linux/' in 'local.properties' is not found.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
即使安装了32位lua也可能出现此错误,此时可以修改/vlc/configure文件,注释掉#as_fn_error $? "You nedd 32-bits luac when using lua from contrib."
make error
http://www.tuicool.com/articles/QnAjyu
——————git 问题 ————
Process 'command 'git'' finished with non-zero exit v
使用git 版本下载, 后者修改 后的git的地方,直接返回字符串
——————sdk编译版本问题———
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':api'.
> failed to find Build Tools revision 23.0.2
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
修改 build.gradle 23.0.2到现有的版本 23.0.3
——————————budding 卡主问题———————
Building 13% > :api:mergeReleaseResources 卡半天
http://stackoverflow.com/questions/30111443/android-studio-fails-to-build-new-project-timed-out-while-wating-for-slave-aapt
dpkg --add-architecture i386
apt-get update
apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386