ubuntu下vlc-android编译

匿名 (未验证) 提交于 2019-12-03 00:29:01

vlc-android编译感觉挺麻烦的,记一下。

我的编译配置: ubuntu16.04LTS + android-ndk-r14b +
android-sdk-r24.4.1-linux

sudo apt-get install automake ant autopoint cmake build-essential libtool \ patch pkg-config protobuf-compiler ragel subversion unzip git \ openjdk-8-jre openjdk-8-jdk flex
vim .bashrc  // 文件路径/home/hxk/.bashrc  

配置ndk与sdk
在最后一行并添加如下代码

#配置ndk ANDROID_NDK=/home/hxk/software/android-ndk-r14b export ANDROID_NDK # 加入到PATH路径 PATH=${PATH}:${ANDROID_NDK} #配置sdk export ANDROID_SDK=/home/hxk/software/android-sdk-linux #VLC编译脚本只认 $ANDROID_SDK 环境变量 export PATH=$PATH:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools

保存文件
更新环境变量:

source /etc/profile source ~/.bashrc//执行环境变量

检查ndk与sdk是否配置成功

3.close vlc-android代码

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

4.在vlc-android目录下close vlc代码
错误1:
这里选择哪个分支close呢?这里之前一直编译报这个错!

解决方案:删除之前的vlc目录,在compile.sh 239行有个git的链接,clone这个vlc在vlc-android目录下

错误2:
如果出现 ../configure:line 9171:syntax error near unexpected token ‘dlopen’ ../configure line 9171:’LT_INIT(dlopen win32-dll shared disable-static)’
这种错误,其实是libtool有问题,我们可以在vlc/vlc-android/vlc目录下执行autoreconf 来解决此问题即可。如果执行autoreconf失败,百度按照对应的操作执行

错误3:报哪个库错误,就百度安装哪个库

5.编译

export ANDROID_ABI=armeabi-v7a//指定版本 //运行脚本 ./compile.sh 

这里会失败,多重复几次

6.编译成功
看到下图说明编译成功了

查看对应目录就可以看到生成的apk文件了,拷贝安装即可。

7.后面就可以定制vlc和ffmpeg等库重新编译了

这里做个简单的小演示,修改一个string文件:

在vlc-android目录下,重新执行脚本 sh compile.sh编译成功后
可以看到apk的改动了

后面我们可以把应用层放到androidstudio中,只需改动c层编译so放进去替换就可以了。

参考文档:
https://www.jianshu.com/p/529293030334
https://wiki.videolan.org/AndroidCompile/
常见错误:
https://www.jianshu.com/p/ec0614e5c55f

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!