Fails to build from source: buildsystem/compile.sh fails
Description
Trying to build vlc-android from source on a Linux system with current versions of pretty much everything (OpenMandriva Cooker) fails during the buildsystem/compile.sh -l -a arm64-v8a
.
There are several things that look wrong in compile.sh output:
Building tools
You are ready to build VLC and its contribs
make: *** No rule to make target '.gas'. Stop.
It then proceeds to download/build gas-preprocessor anyway, so chances are this one is harmless.
Creating makefile...
Bootstrap completed.
make: aarch64-linux-android-gcc: No such file or directory
/bin/sh: line 1: aarch64-linux-android-gcc: command not found
Run "make" to start compilation.
aarch64-linux-android-gcc no longer exists in the NDK. Of course a system wide aarch64-linux-android toolchain can be built, but that is not listed as a dependency for vlc-android anywhere. If I modify my NDK a little by doing cd ndk/21.4.7075529/toolchains/llvm/prebuilt/linux-x86_64/bin ; ln -s aarch64-linux-android30-clang aarch64-linux-android-gcc
, the error message goes away
configure: error: Library libebml >= 1.3.6 libmatroska needed for matroska was not found
This one is odd because the libebml build seemed to succeed earlier, and related files do exist:
$ find . -name libebml*
./vlc/contrib/aarch64-linux-android/lib64/pkgconfig/libebml.pc
./vlc/contrib/aarch64-linux-android/lib64/libebml.a
./vlc/contrib/aarch64-linux-android/include/ebml/c/libebml_t.h
./vlc/contrib/contrib-android-aarch64-linux-android/ebml/libebml.a
./vlc/contrib/contrib-android-aarch64-linux-android/ebml/libebml.pc
./vlc/contrib/contrib-android-aarch64-linux-android/ebml/libebml.proj
./vlc/contrib/contrib-android-aarch64-linux-android/ebml/libebml.pc.in
./vlc/contrib/contrib-android-aarch64-linux-android/ebml/ebml/c/libebml_t.h
./vlc/contrib/tarballs/libebml-1.4.2.tar.xz
I haven't had the time to investigate this yet; probably PKG_CONFIG_PATH isn't being set up correctly to detect the libraries the script built earlier?
Expected behavior
Build succeeds, produces vlc APK
Actual behavior
Build fails
Steps to reproduce
export ANDROID_SDK="/path/to/my/android/sdk/installation"
export ANDROID_NDK=$ANDROID_SDK/ndk/21.4.7075529
buildsystem/compile.sh -l -a arm64-v8a
Context
App version
Tried both master and 3.4.x branches
Android version
11.0
Device model
any
App mode
any