环境介绍
在开始之前先介绍我编译所需要的一些环境版本
Ubuntu 18.04.1
Android SDK:
Android NDK:android ndk-r18b
android studio:android-studio-ide-181.5014246-linux
jdk:1.8.0_191

VLC介绍
VLC是一个免费开源的跨平台多媒体播放器和框架,可以播放众多的多媒体文件,DVD、CD、VCD和各种流协议。VLC使用C语言开发,可跨平台编译为其他系统所用;VLC-Android是将VLC编译为Android可调用类库(*.so)的工程。官网建议在Linux下进行编译,由于依赖的工具包很多,并且VLC编译脚本对工具包版本、代码版本都有严格的hash校验,再加上官方说明并不是很照顾新手,所以出现了很多配置问题。
VLC官网:http://www.videolan.org
VLC源码:http://www.videolan.org/vlc/download-sources.html
VLC依赖:ftp://ftp.videolan.org/pub/contrib/ 或 http://download.videolan.org/pub/contrib/
VLC框架介绍:http://www.codeweblog.com/the-architecture-of-vlc-media-framework/
VLC-Android编译官方文档:https://wiki.videolan.org/AndroidCompile/

开始编译
1.安装Java JDK
在ubuntu可以直接使用apt-get安装openjdk,环境变量已配好,也可以自己配置oracle 官方版本
可以参考ubuntu安装jdk
但是最后在执行编译vlc-android时候 提示少了tools.jar,可以直接copy一个到对应目录即可解决

2.安装工具包
我们需要安装编译所依赖的环境

sudo apt-get install automake ant autopoint cmake build-essential libtool patch pkg-config protobuf-compiler ragel subversion unzip git

3.安装Android SDK
在这里遇到了一个坑,导致后来编译一直过不去,实在没办法就安装了android studio ,用自带的SDK就可以了。
一开始安装的是官方所给出的SDK 但是编译提示没有target

 

 

后来就下载了android studio 然后更新了android sdk 并且配置了SDK的环境变量就不会有上面的错误提示了

4.安装Android NDK
下载android-ndk-r18b,这个文件找了好久 ,这里给出下载地址
android-ndk-r18b-linux-x86_64.zip

export ANDROID_SDK=/home/ubuntu/Android/Sdk
export ANDROID_NDK=/home/ubuntu/Documents/tools/android-ndk-r18b
export PATH=$PATH:$ANDROID_SDK:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools
export PATH=$PATH:$ANDROID_NDK
5.开始编译
下载vlc-android代码

git clone https://code.videolan.org/videolan/vlc-android.git

然后cd vlc-android 执行sh compile.sh 就开始编译,默认编译的是armeabi-v7a

编译过程遇到了几个问题
问题1.就是下载到vlc-android/vlc/contrib/tarballs所依赖的tar.gz 总是不成功 有些可能是网络问题导致 就需要重复执行编译

 

 

问题2.提示找不到target
安装了android studio来更新下载SDK 解决

问题3.编译时候找不到jdk 中的tools.jar
复制了一个已经有的jar 就ok了

最后 完美编译并运行

 

 

编译完成

编译成功后的APK在 /home/skylark/projects/vlc-android/vlc-android/build/outputs/apk/VLC-Android-2.1.16-ARMv7.apk
编译成功后的aar包在 /home/skylark/projects/vlc-android/libvlc/build/outputs/aar/libvlc-3.0.0-null.aar

 

运行如图所示

 

 

 

————————————————
版权声明:本文为CSDN博主「cuiran」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/cuiran/article/details/85248352