Page 1 of 1

Compilation fails at contrib

Posted: 18 Feb 2015 17:19
by carrieje
Hi,

I have some issues compiling libvlc for x86.
I started running the following command as advised by the AndroidCompile page

Code: Select all

sh compile.sh
Then I wanted to make it as simple as possible and I ran the following commands

Code: Select all

git clone git://git.videolan.org/vlc-ports/android.git cd android git clone git://git.videolan.org/vlc.git vlc sh compile-libvlc.sh -a x86 release
and the output is as is

Code: Select all

[......] -- Installing: .../android/vlc/contrib/i686-linux-android/include/taglib/xmfile.h -- Installing: .../android/vlc/contrib/i686-linux-android/include/taglib/xmproperties.h -- Installing: .../android/vlc/contrib/i686-linux-android/lib/libtag_c.a -- Installing: .../android/vlc/contrib/i686-linux-android/include/taglib/tag_c.h -- Installing: .../android/vlc/contrib/i686-linux-android/lib/pkgconfig/taglib_c.pc make[1]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/taglib » touch .taglib contribs: make failed
When I try to rerun compile-libvlc.sh it starts again and stops on another lib (ffmpeg)

Code: Select all

[.....] INSTALL libavutil/libavutil.pc AR libswscale/libswscale.a AR libavutil/libavutil.a AR libavcodec/libavcodec.a AR libavformat/libavformat.a INSTALL libavutil/libavutil.a INSTALL libswscale/libswscale.a INSTALL libavcodec/libavcodec.a INSTALL libavformat/libavformat.a make[1]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/ffmpeg » touch .ffmpeg contribs: make failed
And then it explodes on protobuf (I have no protobuf binary but I installed the compilers and c++ and c libraries for buffers protocol).
[I don't know where to get protobuf binaries, if some are really needed].

Code: Select all

[.....] configure: creating ./config.status config.status: creating Makefile config.status: creating scripts/gtest-config config.status: creating build-aux/config.h config.status: build-aux/config.h is unchanged config.status: executing depfiles commands config.status: executing libtool commands cd protobuf && make && make install make[1]: entrant dans le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/protobuf » make all-recursive make[2]: entrant dans le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/protobuf » Making all in . make[3]: entrant dans le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/protobuf » make[3]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/protobuf » Making all in src make[3]: entrant dans le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/protobuf/src » protoc -I. --cpp_out=. google/protobuf/unittest.proto google/protobuf/unittest_empty.proto google/protobuf/unittest_import.proto google/protobuf/unittest_import_public.proto google/protobuf/unittest_mset.proto google/protobuf/unittest_optimize_for.proto google/protobuf/unittest_embed_optimize_for.proto google/protobuf/unittest_custom_options.proto google/protobuf/unittest_lite.proto google/protobuf/unittest_import_lite.proto google/protobuf/unittest_import_public_lite.proto google/protobuf/unittest_lite_imports_nonlite.proto google/protobuf/unittest_no_generic_services.proto google/protobuf/compiler/cpp/cpp_test_bad_identifiers.proto google/protobuf/unittest.proto:173:3: Expected "required", "optional", or "repeated". google/protobuf/unittest.proto:173:21: Missing field number. google/protobuf/unittest.proto:610:3: Expected "required", "optional", or "repeated". google/protobuf/unittest.proto:610:13: Missing field number. google/protobuf/unittest.proto:632:3: Expected "required", "optional", or "repeated". google/protobuf/unittest.proto:632:13: Missing field number. google/protobuf/unittest.proto:647:3: Expected "required", "optional", or "repeated". google/protobuf/unittest.proto:647:13: Missing field number. google/protobuf/unittest.proto:672:3: Expected "required", "optional", or "repeated". google/protobuf/unittest.proto:672:13: Missing field number. google/protobuf/unittest.proto:853:1: Expected "required", "optional", or "repeated". google/protobuf/unittest.proto:853:21: Missing field number. google/protobuf/unittest.proto:862:1: Reached end of input in message definition (missing '}'). make[3]: *** [unittest_proto_middleman] Erreur 1 make[3]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/protobuf/src » make[2]: *** [all-recursive] Erreur 1 make[2]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/protobuf » make[1]: *** [all] Erreur 2 make[1]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/protobuf » make: *** [.protobuf] Erreur 2 contribs: make failed
What can I do to solve these issues ?


Edit: The following run outputs this

Code: Select all

copying selected object files to avoid basename conflicts... CCLD libgnutls-xssl.la make[4]: entrant dans le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/gnutls/lib » /bin/mkdir -p '.../android/vlc/contrib/i686-linux-android/lib' /bin/mkdir -p '.../android/vlc/contrib/i686-linux-android/lib/pkgconfig' /bin/bash ../libtool --mode=install /usr/bin/install -c libgnutls.la libgnutls-xssl.la '.../android/vlc/contrib/i686-linux-android/lib' /usr/bin/install -c -m 644 gnutls.pc '.../android/vlc/contrib/i686-linux-android/lib/pkgconfig' libtool: install: /usr/bin/install -c .libs/libgnutls.lai .../android/vlc/contrib/i686-linux-android/lib/libgnutls.la libtool: install: /usr/bin/install -c .libs/libgnutls-xssl.lai .../android/vlc/contrib/i686-linux-android/lib/libgnutls-xssl.la libtool: install: /usr/bin/install -c .libs/libgnutls.a .../android/vlc/contrib/i686-linux-android/lib/libgnutls.a libtool: install: chmod 644 .../android/vlc/contrib/i686-linux-android/lib/libgnutls.a libtool: install: i686-linux-android-ranlib .../android/vlc/contrib/i686-linux-android/lib/libgnutls.a libtool: install: /usr/bin/install -c .libs/libgnutls-xssl.a .../android/vlc/contrib/i686-linux-android/lib/libgnutls-xssl.a libtool: install: chmod 644 .../android/vlc/contrib/i686-linux-android/lib/libgnutls-xssl.a libtool: install: i686-linux-android-ranlib .../android/vlc/contrib/i686-linux-android/lib/libgnutls-xssl.a libtool: finish: PATH=".../android/vlc/extras/tools/build/bin:.../android/vlc/extras/tools/build/bin:.../android-ndk-r10d/toolchains/x86-4.8/prebuilt/linux-x86_64/bin:/usr/local/heroku/bin:/opt/ros/indigo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:.../android-studio/bin:.../android-sdk-linux/tools:.../android-ndk-r10d:.../android/vlc/contrib/contrib-android-i686-linux-android/../i686-linux-android/bin:/sbin" ldconfig -n .../android/vlc/contrib/i686-linux-android/lib ---------------------------------------------------------------------- Libraries have been installed in: .../android/vlc/contrib/i686-linux-android/lib If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,-rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- make[4]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/gnutls/lib » make[3]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/gnutls/lib » make[2]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/gnutls/lib » make[1]: quittant le répertoire « .../android/vlc/contrib/contrib-android-i686-linux-android/gnutls/lib » touch .gnutls contribs: make failed

Re: Compilation fails at contrib

Posted: 20 Feb 2015 09:53
by carrieje
I have finally chose to compile on a Archlinux vagrant box.
I must have the last up to date packages.
The compilation is very long here... 1 or 2 hours ! Is it really normal or is it the box layer ?

I have made some progress (at least that's the feeling I have).
It compils a lot of object files in contrib.
I let it run overnight, and this morning, it has sadly failed on a taglib object file and crashed.
(I have lost the output, but I am currently running another compilation to post it here)

I don't know what is wrong in my process.
Can anyone help me in diagnosing it ?
Thank you

PS: I have activated the multilib repository in pacman, but I cannot find the libs i386 asked in the wiki, and it seems that Google's protobuf does not complain.

Re: Compilation fails at contrib

Posted: 20 Feb 2015 15:25
by carrieje
It has gone beyond taglib this time.
But stopped at protobuf compilation.

I cannot diagnose if it's due to i386 libs. But I think it's likely to be the cause.
I am currently trying to install them. In the meanwhile, any hint will be highly appreciated if you notice anything :D

Here is the make log : http://pastebin.com/raw.php?i=BVLsBHx2