本页介绍在 Linux 上 编译VLC for Android

要求

  • 必须在 Linux(或 OSX,如果您知道自己在做什么)上构建。

  • 必须安装以下软件包:

    • GNU 自动工具:autoconf、libtool、automake和make(又名gmake)
    • …及其依赖项:m4和gawk,mawk或nawk,
    • GNU C 和 C++ 编译器又名gcc和g++,
    • 一些 GNU 构建实用程序:pkg-config和patch,
    • 以下其他构建实用程序:Apache Ant(或Ant)、cmake、protobuf、ragel、
    • Subversion 和 Git 版本控制系统
    • 解压缩并使用curl或wget来检索源代码。
  • 可能需要其中一些工具的最新版本。在撰写本文时,特别需要 gettext 0.19.3 或更高版本。

  • 如果缺少上述任何一项,预计构建会在某个时候失败。

  • 如果针对 Android-x86 设备,则还必须安装yasm 。

此处列出了工具依赖项的精确列表。

64位用户:您必须按照此处指定的方式安装这些32位库: #Can.27t_run_aapt_or_adb_on_Linux_64-bit

Ubuntu上的示例

安装包如下:

1
2
3
sudo apt-get install automake ant autopoint cmake build-essential libtool-bin\ 
patch pkg-config protobuf-compiler ragel subversion unzip git\
openjdk-8-jre openjdk-8-jdk flex python wget

Android开发工具包

请按以下步骤操作:

  1. Android Studio下载页面中下载最新的“command line tools only”软件包,然后将其解压缩。
  2. 将解压缩的cmdline-tools目录移至您选择的新目录,例如android_sdk。这个新目录就是您的Android SDK目录。
  3. 在解压缩的cmdline-tools目录中,创建一个名为latest的子目录。
  4. 将原始cmdline-tools目录内容(包括lib目录、bin目录、NOTICE.txt文件和source.properties文件)移动到新创建的latest目录中。现在,您就可以从这个位置使用命令行工具了。
1
android_sdk/cmdline-tools/latest/bin/sdkmanager --version

更多的SDKManager用法

安装 CMake 或 NDK

1
2
3
4
sdkmanager "platform-tools" "platforms;android-33"
sdkmanager --install "ndk;25.1.8937393"
sdkmanager --install "ndk;21.4.7075529"
sdkmanager --install "cmake;3.22.1"

出现这个错误

1
2
3
4
lib/fseterr.c: In function 'fseterr':
lib/fseterr.c:77:3: error: #error "Please port gnulib fseterr.c to your platform! Look at the definitions of ferror and clearerr on your system, then report this to bug-gnulib."
77 | #error "Please port gnulib fseterr.c to your platform! Look at the definitions of ferror and clearerr on your system, then report this to bug-gnulib."
| ^~~~~