GNOME Bugzilla – Bug 723630
Error while compiling gstreamer-vaaapi 0.5.8 on Debian (No rule to make target « ../../../ext/codecparsers/gst-libs/gst/codecparsers/parserutils.c »)
Last modified: 2014-04-21 16:14:40 UTC
Hi, I've downloaded version 0.5.8 of gstreamer-vaapi sources [1] and run "./autogen.sh" [2], then "make" and got that error (on my french machine which is made of an Intel Core i3-3225 « Ivy Bridge » - HD Graphics 4000 & Intel H77 chipset, and which runs Linux debian 3.12-1-amd64, libc6 2.17-97, gstreamer 1.2.2 & libva1 1.2.1-2) : see [3]. Thanks in advance Cheers Thibaut [1] https://gitorious.org/vaapi/gstreamer-vaapi/source/c9af9a86088fa6d943bec91005d4c58f37f69a0 [2] Here is the corresponding prompt : "fatal: Not a git repository (or any parent up to mount point /mnt/data) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). fatal: Not a git repository (or any parent up to mount point /mnt/data) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal -I m4 ${ACLOCAL_FLAGS} autoreconf: configure.ac: tracing autoreconf: configure.ac: creating directory build-aux autoreconf: running: libtoolize --copy libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'. libtoolize: copying file `build-aux/ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'. libtoolize: copying file `m4/libtool.m4' libtoolize: copying file `m4/ltoptions.m4' libtoolize: copying file `m4/ltsugar.m4' libtoolize: copying file `m4/ltversion.m4' libtoolize: copying file `m4/lt~obsolete.m4' autoreconf: running: /usr/bin/autoconf autoreconf: running: /usr/bin/autoheader autoreconf: running: automake --add-missing --copy --no-force configure.ac:91: installing 'build-aux/compile' configure.ac:71: installing 'build-aux/config.guess' configure.ac:71: installing 'build-aux/config.sub' configure.ac:73: installing 'build-aux/install-sh' configure.ac:73: installing 'build-aux/missing' docs/reference/libs/Makefile.am:97: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') docs/reference/plugins/Makefile.am:82: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') gst-libs/gst/base/Makefile.am: installing 'build-aux/depcomp' autoreconf: Leaving directory `.' checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether UID '1000' is supported by ustar format... yes checking whether GID '1000' is supported by ustar format... yes checking how to create a ustar tar archive... gnutar checking whether make supports nested variables... (cached) yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for git... /usr/bin/git checking how to print strings... printf checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for fgrep... /bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for mt... mt checking if mt is a manifest tool... no checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking for tan in -lm... yes checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for gtkdoc-check... /usr/bin/gtkdoc-check checking for gtkdoc-rebase... /usr/bin/gtkdoc-rebase checking for gtkdoc-mkpdf... /usr/bin/gtkdoc-mkpdf checking whether to build gtk-doc documentation... no checking for GLIB... yes checking for dlopen... no checking for dlopen in -ldl... yes checking for GStreamer API version... 1.2 checking for GST... yes checking for GST_BASE... yes checking for GstBaseSink::query hook... yes checking for GST_PLUGINS_BASE... yes checking for GST_VIDEO... yes checking for GstVideoOverlayComposition... yes checking ... with advanced format flags... yes checking for MPEG-2 parser... (cached) no checking for H.264 parser... (cached) no checking for JPEG parser... (cached) no checking for GStreamer plugins directory... /usr/lib/x86_64-linux-gnu/gstreamer-1.0 checking for DRM... yes checking for UDEV... no checking for X11... yes checking X11/Xlib.h usability... yes checking X11/Xlib.h presence... yes checking for X11/Xlib.h... yes checking X11/Xutil.h usability... yes checking X11/Xutil.h presence... yes checking for X11/Xutil.h... yes checking X11/Xatom.h usability... yes checking X11/Xatom.h presence... yes checking for X11/Xatom.h... yes checking for XRANDR... yes checking X11/extensions/Xrandr.h usability... yes checking X11/extensions/Xrandr.h presence... yes checking for X11/extensions/Xrandr.h... yes checking for XRENDER... yes checking X11/extensions/Xrender.h usability... yes checking X11/extensions/Xrender.h presence... yes checking for X11/extensions/Xrender.h... yes checking for GL... yes checking for GL/gl.h... yes checking for GL/glext.h... yes checking for GL/glx.h... yes checking for glXCreateContext in -lGL... yes checking for WAYLAND... yes checking wayland-client.h usability... yes checking wayland-client.h presence... yes checking for wayland-client.h... yes checking for LIBVA... yes checking for LIBVA_X11... yes checking for LIBVA_GLX... yes checking va/va_glx.h usability... yes checking va/va_glx.h presence... yes checking for va/va_glx.h... yes checking for va/va_dec_jpeg.h... yes checking for JPEG decoding API... yes checking for video post-postprocessing API... yes checking for LIBVA... yes checking for va/va_enc_mpeg2.h... yes checking for va/va_enc_h264.h... yes checking for LIBVA_WAYLAND... no checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating debian.upstream/Makefile config.status: creating debian.upstream/changelog config.status: creating debian.upstream/control config.status: creating debian.upstream/gstreamer1.2-vaapi-doc.install config.status: creating debian.upstream/gstreamer1.2-vaapi.install config.status: creating debian.upstream/libgstvaapi1.2-dev.install config.status: creating debian.upstream/libgstvaapi1.install config.status: creating debian.upstream/libgstvaapi-drm-1.install config.status: creating debian.upstream/libgstvaapi-glx-1.install config.status: creating debian.upstream/libgstvaapi-wayland-1.install config.status: creating debian.upstream/libgstvaapi-x11-1.install config.status: creating docs/Makefile config.status: creating docs/reference/Makefile config.status: creating docs/reference/libs/Makefile config.status: creating docs/reference/libs/libs-docs.xml config.status: creating docs/reference/plugins/Makefile config.status: creating docs/reference/plugins/plugins-docs.xml config.status: creating ext/Makefile config.status: creating gst-libs/Makefile config.status: creating gst-libs/gst/Makefile config.status: creating gst-libs/gst/base/Makefile config.status: creating gst-libs/gst/codecparsers/Makefile config.status: creating gst-libs/gst/vaapi/Makefile config.status: creating gst-libs/gst/video/Makefile config.status: creating gst/Makefile config.status: creating gst/vaapi/Makefile config.status: creating pkgconfig/Makefile config.status: creating pkgconfig/gstreamer-vaapi-1.2.pc config.status: creating pkgconfig/gstreamer-vaapi-drm-1.2.pc config.status: creating pkgconfig/gstreamer-vaapi-glx-1.2.pc config.status: creating pkgconfig/gstreamer-vaapi-wayland-1.2.pc config.status: creating pkgconfig/gstreamer-vaapi-x11-1.2.pc config.status: creating tests/Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands gstreamer-vaapi configuration summary: GStreamer API version ............ : 1.2 VA-API version ................... : 0.34.0 Video encoding ................... : yes Video outputs .................... : x11 glx Now type 'make' to compile gstreamer-vaapi." [3] Here is the corresponding prompt : "(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /mnt/data/vaapi-gstreamer-vaapi/build-aux/missing autoheader) rm -f stamp-h1 touch config.h.in cd . && /bin/bash ./config.status config.h config.status: creating config.h config.status: config.h is unchanged make all-recursive make[1]: entrant dans le répertoire « /mnt/data/vaapi-gstreamer-vaapi » Making all in debian.upstream make[2]: entrant dans le répertoire « /mnt/data/vaapi-gstreamer-vaapi/debian.upstream » make[2]: Rien à faire pour « all ». make[2]: quittant le répertoire « /mnt/data/vaapi-gstreamer-vaapi/debian.upstream » Making all in gst-libs make[2]: entrant dans le répertoire « /mnt/data/vaapi-gstreamer-vaapi/gst-libs » Making all in gst make[3]: entrant dans le répertoire « /mnt/data/vaapi-gstreamer-vaapi/gst-libs/gst » Making all in base make[4]: entrant dans le répertoire « /mnt/data/vaapi-gstreamer-vaapi/gst-libs/gst/base » CC libgstvaapi_baseutils_la-gstbitwriter.lo CCLD libgstvaapi-baseutils.la make[4]: quittant le répertoire « /mnt/data/vaapi-gstreamer-vaapi/gst-libs/gst/base » Making all in codecparsers make[4]: entrant dans le répertoire « /mnt/data/vaapi-gstreamer-vaapi/gst-libs/gst/codecparsers » make[4]: *** Pas de règle pour fabriquer la cible « ../../../ext/codecparsers/gst-libs/gst/codecparsers/parserutils.c », nécessaire pour « parserutils.c ». Arrêt. make[4]: quittant le répertoire « /mnt/data/vaapi-gstreamer-vaapi/gst-libs/gst/codecparsers » make[3]: *** [all-recursive] Erreur 1 make[3]: quittant le répertoire « /mnt/data/vaapi-gstreamer-vaapi/gst-libs/gst » make[2]: *** [all-recursive] Erreur 1 make[2]: quittant le répertoire « /mnt/data/vaapi-gstreamer-vaapi/gst-libs » make[1]: *** [all-recursive] Erreur 1 make[1]: quittant le répertoire « /mnt/data/vaapi-gstreamer-vaapi » make: *** [all] Erreur 2"
Hi, (In reply to comment #0) > I've downloaded version 0.5.8 of gstreamer-vaapi sources [1] and run > "./autogen.sh" [2], then "make" and got that error (on my french > machine which is made of an Intel Core i3-3225 « Ivy Bridge » - HD > Graphics 4000 & Intel H77 chipset, and which runs Linux debian > 3.12-1-amd64, libc6 2.17-97, gstreamer 1.2.2 & libva1 1.2.1-2) : see > [3]. The process to "download version 0.5.8" depicted above is not correct. You either need to fetch the correctly prepared gstreamer-vaapi-0.5.8.tar.bz2 tarball on freedesktop.org (http://www.freedesktop.org/software/vaapi/releases/gstreamer-vaapi/) or you need to fetch the 0.5.8 tag through git clone, not the "git archive" prepared tarball from Gitorious.
Thanks. I've download the tar.bz2 file on freedesktop.org and run "./autogen.sh" but then got : "bash: ./autogen.sh: Aucun fichier ou dossier de ce type" (in english : No such file or directory)
The source tarballs prepared for fd.o don't contain autogen.sh because the configure script was already prepared, along with the submodules files already downloaded and packaged into the tarball. So, if you downloaded the gstreamer-vaapi-0.5.8.tar.bz2 file from fd.o but running ./configure && make fails from it, then I probably missed a file. Though, this looks unlikely since make deb.upstream worked on the platforms I tested. BTW, since you are running on a Debian platform, you could probably favor to build .deb packages instead. $ ln -s debian.upstream debian $ dpkg-buildpackage -rfakeroot -uc -us
Indeed, I tried the "./configure && make" method and had no error Thank you very much !
I get the error on Fedora 20. No rule to make target `../../../ext/videoutils/gst-libs/gst/video/gstvideoencoder.h' etc. Maybe it's just me, but I don't see a makefile in that directory. I must add that I was trying to compile it for Gstreamer 0.10, since recent Firefox builds include support for this version, and having hardware accelerated HTML5 videos is the main motivation. While apparently they are going to switch to Gstreamer 1 in the long run, for the moment using the old API might solve the task. The config.log is in the attachment.
Created attachment 269165 [details] config.log
Tarballs must be downloaded from freedesktop.org, or generated from the git master tree with make dist. As to comment #5, this is also fixed in git master branch, and a duplicate for bug #723964 *** This bug has been marked as a duplicate of bug 723964 ***