I'm trying to use LibVLC for Android, and I followed the instructions https://wiki.videolan.org/AndroidCompile and worked fine for ARM. However, when I tried to compile it on x86, I installed:
export ANDROID_ABI = x86
and then compiled in the same way, but now I have a problem since it does not compile. Here's a truncated build log:
~/vlc-android$ sh compile.sh VLC source found Building tools You are ready to build VLC and its contribs Building the contribs Generating EGL pkg-config file Generating GLESv2 pkg-config file Guessing build system... x86_64-linux-gnu Creating configuration file... config.mak Bootstrap completed. ... config.status: executing libtool commands Type "make; make install" to compile and install Speex cd speexdsp && make install make[1]: Entering directory `/home/user/vlc-android/vlc/contrib/contrib-android-i686-linux-android/speexdsp' Making install in libspeexdsp make[2]: Entering directory `/home/user/vlc-android/vlc/contrib/contrib-android-i686-linux-android/speexdsp/libspeexdsp' CC resample.lo In file included from resample.c:104:0: resample_neon.h:142:21: error: redefinition of 'inner_product_single' static inline float inner_product_single(const float *a, const float *b, unsigned int len) ^ In file included from resample.c:100:0: resample_sse.h:40:21: note: previous definition of 'inner_product_single' was here static inline float inner_product_single(const float *a, const float *b, unsigned int len) ^ make[2]: *** [resample.lo] Error 1 make[2]: Leaving directory `/home/user/vlc-android/vlc/contrib/contrib-android-i686-linux-android/speexdsp/libspeexdsp' make[1]: *** [install-recursive] Error 1 make[1]: Leaving directory `/home/user/vlc-android/vlc/contrib/contrib-android-i686-linux-android/speexdsp' make: *** [.speexdsp] Error 2
As far as I can tell, for this reason, for some reason, both the ARM headers and the SSE headers are included, which causes an override error. However, I do not know why and what to try to fix. Any suggestions would be highly appreciated.
source share