2015——VLC编译
编译系统:Ubuntu 32位系统(我使用的是ubuntukylin-14.04.2-desktop-i386在VMware虚拟机上) Android SDK:使用最新版本android-sdk-r24.3.3-linux.tar,下载后还需要安装最新的build-tools(SDK 5.0以上推荐,部分新功能依赖此版本) NDK:使用android-ndk-r10e-linux-86.bin JDK:安装了jdk-8u51-linux-i586 手动下载并安装新版本(如0.19.3) 在对应的配置文件中手动修改版本号为0.18.3
发布日期:2025-06-07 21:53:41
浏览次数:3
分类:精选文章
本文共 1627 字,大约阅读时间需要 5 分钟。
VLC Android编译指南:在Ubuntu 32位系统下完成
作为一名开发人员,我多次尝试在Ubuntu系统下编译VLC Android版应用,最终成功完成了这一过程。以下是我整理的详细编译步骤和经验分享,希望能为有类似需求的开发者提供帮助。
一、所需工具准备
在编译过程中,我使用以下工具和版本:
二、环境搭建
在安装所有必要软件包后,需要配置环境变量。以下是详细的配置步骤:
sudo apt-get install automake ant autopoint cmake build-essential libtool patch pkg-config protobuf-compiler ragel subversion unzip git
环境变量配置
export JAVA_HOME=/home/youruser/tools/jdk1.8.0_51export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH export ANDROID_SDK=/home/youruser/tools/android-sdk-linuxexport ANDROID_NDK=/home/youruser/tools/android-ndk-r10eexport PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/toolsexport ANDROID_ABI=armeabi-v7a # 根据需要调整,如x86或mips
确保ANDROID_ABI设置正确,默认值为armeabi-v7a。
三、获取源代码
在项目目录中执行以下命令下载源代码:
git clone
这将在当前目录中创建一个android子目录,包含必要的编译配置。
四、开始编译
进入android目录,执行编译脚本:
./compile.sh
脚本会自动下载VLC源码和相关插件。下载过程中可能会遇到被墙阻止的问题,如果使用VPN会更顺利。下载失败的文件需要手动获取并放到相应目录。
常见问题解决
在编译过程中,可能会遇到gettext版本不兼容的问题。系统自带的gettext版本为0.18.3,编译需要版本更高。解决方法如下:
五、生成APK文件
编译完成后,APK文件位于android/vlc-android/build/outputs目录下。
六、程序运行
由于使用的是Gradle构建,直接在Eclipse中使用可能较为复杂。推荐使用Android Studio或IntelliJ IDEA进行开发和调试。需要注意的是,由于使用了支持库,可能会遇到类似appcompat和cardview的依赖冲突问题,建议手动管理这些依赖。
注意事项
- 确保网络稳定,避免下载中断。
- 如果遇到问题,请参考相关社区或开发者论坛,如Stack Overflow,寻求帮助。
- 建议定期备份工作目录,防止中断后的数据丢失。
希望这份指南能为您的编译过程提供清晰的指导,祝您编译成功!如果有任何疑问或遇到问题,请随时反馈。
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2026年06月01日 22时57分21秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
PHP的ip2long和long2ip升级函数
2023-03-01
php的web路径获取
2023-03-01
php的一些小笔记--字符串
2023-03-01
php的几种运行模式CLI、CGI、FastCGI、mod_php
2023-03-01
php的四大特性八大优势
2023-03-01
RabbitMQ
2023-03-01
PHP的威胁函数与PHP代码审计实战
2023-03-01
PHP的引用举例
2023-03-01
PHP相关代码
2023-03-01
RabbitMQ
2023-03-01
php知识点记录
2023-03-01
PHP类数组式访问(ArrayAccess接口)
2023-03-01
PHP系列:浅谈PHP中isset()和empty() 函数的区别
2023-03-01
PHP索引数组unset的坑-array_values解决方案
2023-03-01
PHP索引数组排序方法整理(冒泡、选择、插入、快速)
2023-03-01
PHP线程安全和非线程安全
2023-03-01
R3LIVE开源项目常见问题解决方案
2023-03-01
php缃戠珯,www.wfzwz.com
2023-03-01
php缓存查询函数
2023-03-01