编译环境是ubuntu 64bit

全程参考https://wiki.videolan.org/AndroidCompile/

一:环境准备

1.安装系统

尽量使用最新的ubuntu系统 可以省去很多麻烦

我安装的是Ubuntu Server 16.10 下载地址是http://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/16.10/ubuntu-16.10-server-amd64.iso

安装完之后更改源us.archive.ubuntu.com到cn.archive.ubuntu.com 就是把/etc/apt/source.list里面的链接都替换一下就行了

然后sudo apt-get update

2.安装相应的包

sudo apt-get install subversion unzip git g++ unzip python automake ragel

3.下载NDK SDK

通常都是下载最新版本的NDK 现在用r13b 下载地址https://dl.google.com/android/repository/android-ndk-r13b-linux-x86_64.zip

还有SDK,JDK

二:准备VLC for Android代码

1.下载代码

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

这里要注意的是选择一个较好的网络,如果网络有问题git下来的文件很有可能会有问题 导致各种编译问题,这个是最容易出问题的地方,

基本上我每次编译出现的各种问题都是这个引起的

2.编辑compile.sh

因为这个脚本要从VLC的官方网站下载gradle 但是国内下载的话网速应该不行 所以要换一个地址 打开脚本

找到语句GRADLE_URL=https://download.videolan.org/pub/contrib/gradle/gradle-${GRADLE_VERSION}-bin.zip

替换成GRADLE_URL=http://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip

接着下面几行找语句./gradlew -version 注释掉 不然会再次下载

3.运行脚本

我做了一个简单的脚本

#!/bin/bash
#yum -y install yasm #export ac_cv_func_realloc_0_nonnull=yes
#curDir=$(pwd)
curDir=/home/sdk
ndk=android-ndk-r13b
export ANDROID_PATH=$(pwd)/vlc-android
export NDK=$curDir/sdk/$ndk
export ANDROID_SDK=$curDir/sdk/android-sdk-linux
export ANDROID_NDK=$curDir/sdk/$ndk
export ANDROID_ABI=armeabi-v7a
#export ANDROID_ABI=arm64-v8a
export JAVA_HOME=$curDir/sdk/jdk1..0_60
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$ANDROID_SDK:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
echo "------env set ok------" cd vlc-android
sh $ANDROID_PATH/compile.sh
#sh $ANDROID_PATH/compile-libvlc.sh

开始运行 中途提示差什么包 就安装什么包

三.遇到不能下载的包

在编译VLC的时候 会有很多第三方包  经常下载慢或者根本下载不了 需要手动下载这些包放到

vlc-android/vlc/contrib/tarballs 例如现在libarchive-3.2.2.tar.gz下载不了 脚本里面的下载链接直接返回了404,

这个时候手动下载,通常也很慢,可以通过网页代理来下载 百度搜索网页代理 进入第一个有风和日丽的那个 输入下载地址

http://www.libarchive.org/downloads/libarchive-3.2.2.tar.gz

VLC for Android编译的更多相关文章

  1. VLC for Android 编译过程

    首先,给一个VLC的官网链接:VLC-AndroidCompile 上面有编译所需要安装的插件,环境变量的配置等等信息:虽然是英语,但也挺好理解,这里就不再详述:此文主要记录我在编译的过程中遇到的一些 ...

  2. Android : VLC for Android 环境搭建及编译

    一.下载VLC源码: git clone https://code.videolan.org/videolan/vlc-android.git 编译apk:   sh compile.sh -a ar ...

  3. Linux下编译VLC for Android源代码总结

    转:http://blog.chinaunix.net/uid-26611383-id-3678766.html 由于项目需要,需要一个在android平台能够支持RTSP协议的播放器,由于之前没有a ...

  4. 基于 VLC 的 Android 多媒体解决方案

    前段时间项目中需要在 Android 中播放视频.流媒体.查看监控,就研究了一下 Android 多媒体解决方案. 查找了一下,大致有如下几种: Android MediaPlayer FFmpeg ...

  5. Vlc for Android 全面阐述

    简单介绍 Vlc for android是一款开源安卓播放器.具备播放多媒体文件.光盘.设备以及网络流媒体协议等功能,支持ARMv7 CPU或一个x86 CPU的设备,全部播放控制特性都已经开发完整. ...

  6. Android编译环境折腾记

    题记:感觉是时候写点什么了=_=! 第一次安装了ubuntu14.04.5,官网下载的iso,官网下的jar,编译android4.x需要安装jdk6,更高的版本会有问题,baidu到很多搭建环境的步 ...

  7. Cocos2d-x3.6 Android编译问题

    在Cocod2d-x论坛上看到越来越多人吐槽新版本更新太快,改动太大,而且经常有BUG导致升级要折腾很久很久..但我就是喜欢折腾,喜欢升级到最新版本,看看有了哪些新功能,哪些改进.为此也折腾了不少,遇 ...

  8. Xamarin.Android编译CPU类型选择方式

    Xamarin.Android编译CPU类型选择方式 在Xamarin.Android编译的时候,默认提供了5种CPU类型供大家选择.它们分别为armeabi.armeabi-v7a.arm64-v8 ...

  9. Xamarin.Android编译提示找不到mscorlib.dll.so文件

    Xamarin.Android编译提示找不到mscorlib.dll.so文件 错误信息:AOT module ‘mscorlib.dll.so’ not found: Cannot load lib ...

随机推荐

  1. 企业面试题|最常问的MySQL面试题集合(一)

    问题1:char.varchar的区别是什么?varchar是变长而char的长度是固定的.如果你的内容是固定大小的,你会得到更好的性能. 问题2: TRUNCATE和DELETE的区别是什么?DEL ...

  2. git大全转

    git原理:https://git-scm.com/book/zh/v2 http://blog.xiayf.cn/2013/09/28/learning-git-internals-by-examp ...

  3. Redox OS 发布 0.5 版

    Redox OS 是一个几乎完全以 Rust 语言编写的通用操作系统及周围生态(例如文件系统.显示服务器及 Rust 版本的 libc).其遵循微内核架构,在一定程度上兼容于 POSIX. 该项目于日 ...

  4. laravel 学习之第二章

    Controller Controller之Request 获取请求的值 namespace App\Http\Controllers; use Illuminate\http\Request; pu ...

  5. win 与Linux 的hosts文件地址

    win(phpstudy):C:/Windows/System32/drivers/etc/hosts linux:  /etc/hosts

  6. Qualcomm_Mobile_OpenCL.pdf 翻译-8-kernel性能优化

    这章将会说明一些kernel优化的小技巧. 8.1 kernel合并或者拆分 一个复杂的应用程序可能包含很多步骤.对于OpenCL的移植性和优化,可能会问需要开发有多少个kernel.这个问题很难回答 ...

  7. idea 添加静态注释和live Templates

    静态注释 /** * @Description * @Author wzz * @Date ${DATE} ${TIME} */ Live Templates 1.新建一个自己的添加组如图:Mygro ...

  8. 如何通过Samba共享Linux文件夹

    https://blog.csdn.net/stu059074244/article/details/77766155   Samba(SMB是其缩写) 是一个网络服务器,用于Linux和Window ...

  9. 约会 Rendezvous:基环树

    提炼:tarjan判环,dfs建树,倍增lca,预处理环两点间距离 我犯的错误: 1.基环树不只有一棵,可以有很多 2.自环不能将其忽略,(对于我的算法)应该将其特殊考虑在算法内 3.代码一定要简洁有 ...

  10. Eclipse中对一个项目进行复制粘贴为一个新项目

    1:对目标项目执行右键,选择“Copy”,然后在空白处右键,选择“Paste”结果如下图: 2:右键新项目,点击Properties, 3:打开Navigator视图 4:打开.settings文件夹 ...