Page 1 of 1

Ubuntu Build Error - Implicit Definition of Function 'timegm'

Posted: 24 Aug 2016 00:25
by ThomasIndustry
Hi, I have been trying to build a slightly older x86 version of android-vlc in order to generate libvlc.aar, but I can't get the compiler to recognize and use the linux c++ headers. (specifically /usr/include/time.h). I probably need to add it to a path somewhere, but I cannot figure out where. Can someone point me in the right direction? I am using Ubuntu 16.04.1

Code: Select all

Configuring ABI: x86 API: android-21 SYSROOT: /home/thomas/Android/Sdk/ndk-bundle/platforms/android-21/arch-x86 PATH: /home/thomas/Android/Sdk/ndk-bundle/toolchains/x86-4.9/prebuilt/linux-x86_64/bin:/home/thomas/bin:/home/thomas/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin CFLAGS: -g -O2 -fstrict-aliasing -funsafe-math-optimizations EXTRA_CFLAGS: -mtune=atom -msse3 -mfpmath=sse -m32 -I/home/thomas/Android/Sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include -I/home/thomas/Android/Sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86/include Building tools Make flags inc -j1 Make flags end 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. Run "make" to start compilation. Other targets: * make install same as "make" * make prebuilt fetch and install prebuilt binaries * make list list packages * make fetch fetch required source tarballs * make fetch-all fetch all source tarballs * make distclean clean everything and undo bootstrap * make mostlyclean clean everything except source tarballs * make clean clean everything * make package prepare prebuilt packages make: Nothing to be done for 'fetch'. make: Nothing to be done for 'all'. Building make all-recursive make[1]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android' Making all in compat make[2]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/compat' make all-am make[3]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/compat' make[3]: Nothing to be done for 'all-am'. make[3]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/compat' make[2]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/compat' Making all in doc make[2]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/doc' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/doc' Making all in po make[2]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/po' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/po' Making all in share make[2]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/share' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/share' Making all in src make[2]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/src' GEN stamp-revision make all-am make[3]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/src' make[3]: Nothing to be done for 'all-am'. make[3]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/src' make[2]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/src' Making all in modules make[2]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/modules' make all-recursive make[3]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/modules' Making all in . make[4]: Entering directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/modules' CC access/http/libvlc_http_la-message.lo Makefile:17086: recipe for target 'access/http/libvlc_http_la-message.lo' failed make[4]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/modules' Makefile:18512: recipe for target 'all-recursive' failed make[3]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/modules' Makefile:8227: recipe for target 'all' failed make[2]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android/modules' Makefile:2244: recipe for target 'all-recursive' failed make[1]: Leaving directory '/home/thomas/vlc_197/vlc-android/vlc/build-android-i686-linux-android' Makefile:2128: recipe for target 'all' failed vlc: make failed

Code: Select all

Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at /home/thomas/vlc_197/vlc-android/vlc/extras/tools/build/bin/automake line 3930. ../../modules/access/http/message.c: In function 'vlc_http_msg_h2_frame': ../../modules/access/http/message.c:458:33: warning: passing argument 5 of 'vlc_h2_frame_headers' from incompatible pointer type i, headers); ^ In file included from ../../modules/access/http/message.c:37:0: ../../modules/access/http/h2frame.h:39:1: note: expected 'const char * const (*)[2]' but argument is of type 'const char * (*)[2]' vlc_h2_frame_headers(uint_fast32_t stream_id, uint_fast32_t mtu, bool eos, ^ ../../modules/access/http/message.c: In function 'vlc_http_mktime': ../../modules/access/http/message.c:777:13: error: implicit declaration of function 'timegm' [-Werror=implicit-function-declaration] return timegm(&tm); ^ cc1: some warnings being treated as errors make[4]: *** [access/http/libvlc_http_la-message.lo] Error 1 make[3]: *** [all-recursive] Error 1 make[2]: *** [all] Error 2 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2

Re: Ubuntu Build Error - Implicit Definition of Function 'timegm'

Posted: 24 Aug 2016 16:54
by Jean-Baptiste Kempf
unfortunately, you should always compile the HEAD of the git.