I use libva-driver-intel branch g45-h264, because I need HW decoding, but now driver libva-driver-intel does not compile against libva 1.1.0. Normally i use libva bracnch g45-h264, but it would be nice to use the evolving version from upstream. ---log--- checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking how to print strings... printf checking for style of include used by make... GNU 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 dependency style of gcc... gcc3 checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/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... no checking if : 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... no checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking dependency style of gcc... (cached) gcc3 checking whether gcc and cc understand -c and -o together... yes checking whether byte ordering is bigendian... no checking for ANSI C header files... (cached) yes checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for DRM... yes checking for GEN4ASM... no checking for LIBVA_DEPS... yes checking for LIBVA_X11_DEPS... yes checking for VA drivers path... /usr/lib/dri 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 src/Makefile config.status: creating src/shaders/Makefile config.status: creating src/shaders/h264/Makefile config.status: creating src/shaders/h264/ildb/Makefile config.status: creating src/shaders/h264/mc/Makefile config.status: creating src/shaders/mpeg2/Makefile config.status: creating src/shaders/mpeg2/vld/Makefile config.status: creating src/shaders/post_processing/Makefile config.status: creating src/shaders/render/Makefile config.status: creating src/shaders/vme/Makefile config.status: creating src/config.h config.status: src/config.h is unchanged config.status: executing depfiles commands config.status: executing libtool commands libva-driver-intel configuration summary: VA-API version ................... : 0.33.0 VA-API drivers path .............. : /usr/lib/dri Making all in debian.upstream make[1]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/debian.upstream' sed \ -e 's|\@DATE\@|'"`LC_ALL=C date +'%a, %d %b %Y %X %z'`"'|' \ -e 's|\@LIBDRM_VERSION\@|2.4.23|' \ -e 's|\@LIBVA_PACKAGE_VERSION\@|1.0.14|' \ -e 's|\@PACKAGE_VERSION\@|1.0.14|' \ changelog.in > changelog sed \ -e 's|\@DATE\@|'"`LC_ALL=C date +'%a, %d %b %Y %X %z'`"'|' \ -e 's|\@LIBDRM_VERSION\@|2.4.23|' \ -e 's|\@LIBVA_PACKAGE_VERSION\@|1.0.14|' \ -e 's|\@PACKAGE_VERSION\@|1.0.14|' \ control.in > control make[1]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/debian.upstream' Making all in src make[1]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' make all-recursive make[2]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' Making all in shaders make[3]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders' Making all in h264 make[4]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/h264' Making all in ildb make[5]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/h264/ildb' make[5]: Nothing to be done for `all'. make[5]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/h264/ildb' Making all in mc make[5]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/h264/mc' make[5]: Nothing to be done for `all'. make[5]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/h264/mc' make[5]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/h264' make[5]: Nothing to be done for `all-am'. make[5]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/h264' make[4]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/h264' Making all in mpeg2 make[4]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/mpeg2' Making all in vld make[5]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/mpeg2/vld' make[5]: Nothing to be done for `all'. make[5]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/mpeg2/vld' make[5]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/mpeg2' make[5]: Nothing to be done for `all-am'. make[5]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/mpeg2' make[4]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/mpeg2' Making all in render make[4]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/render' make[4]: Nothing to be done for `all'. make[4]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/render' Making all in post_processing make[4]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/post_processing' make[4]: Nothing to be done for `all'. make[4]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/post_processing' Making all in vme make[4]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/vme' make[4]: Nothing to be done for `all'. make[4]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/vme' make[4]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders' make[4]: Nothing to be done for `all-am'. make[4]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders' make[3]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders' make[3]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' CC i965_drv_video_la-gen6_mfc.lo CC i965_drv_video_la-gen6_mfd.lo CC i965_drv_video_la-gen6_vme.lo In file included from intel_batchbuffer.h:9:0, from gen6_mfc.c:35: intel_driver.h:112:1: error: unknown type name 'Bool' intel_driver.h:113:1: error: unknown type name 'Bool' In file included from i965_render.h:36:0, from i965_drv_video.h:206, from gen6_mfc.c:38: i965_post_processing.h:370:1: error: unknown type name 'Bool' i965_post_processing.h:372:1: error: unknown type name 'Bool' In file included from i965_drv_video.h:206:0, from gen6_mfc.c:38: i965_render.h:82:1: error: unknown type name 'Bool' i965_render.h:83:1: error: unknown type name 'Bool' In file included from i965_encoder.h:39:0, from gen6_mfc.c:39: gen6_vme.h:86:1: error: unknown type name 'Bool' gen6_vme.h:87:1: error: unknown type name 'Bool' In file included from i965_encoder.h:40:0, from gen6_mfc.c:39: gen6_mfc.h:103:1: error: unknown type name 'Bool' gen6_mfc.h:104:1: error: unknown type name 'Bool' In file included from intel_batchbuffer.h:9:0, from gen6_vme.c:35: intel_driver.h:112:1: error: unknown type name 'Bool' intel_driver.h:113:1: error: unknown type name 'Bool' In file included from i965_render.h:36:0, from i965_drv_video.h:206, from gen6_vme.c:39: i965_post_processing.h:370:1: error: unknown type name 'Bool' i965_post_processing.h:372:1: error: unknown type name 'Bool' In file included from i965_drv_video.h:206:0, from gen6_vme.c:39: i965_render.h:82:1: error: unknown type name 'Bool' i965_render.h:83:1: error: unknown type name 'Bool' In file included from gen6_vme.c:40:0: gen6_vme.h:86:1: error: unknown type name 'Bool' gen6_vme.h:87:1: error: unknown type name 'Bool' In file included from i965_encoder.h:40:0, from gen6_vme.c:41: gen6_mfc.h:103:1: error: unknown type name 'Bool' gen6_mfc.h:104:1: error: unknown type name 'Bool' gen6_vme.c: In function 'gen6_vme_source_surface_state': gen6_vme.c:194:5: warning: implicit declaration of function 'offsetof' [-Wimplicit-function-declaration] gen6_vme.c:194:5: error: expected expression before 'struct' gen6_vme.c: In function 'gen6_vme_media_source_surface_state': gen6_vme.c:224:20: error: 'True' undeclared (first use in this function) gen6_vme.c:224:20: note: each undeclared identifier is reported only once for each function it appears in gen6_vme.c:236:5: error: expected expression before 'struct' gen6_mfc.c:955:1: error: unknown type name 'Bool' gen6_mfc.c: In function 'gen6_mfc_context_init': gen6_mfc.c:957:12: error: 'True' undeclared (first use in this function) gen6_mfc.c:957:12: note: each undeclared identifier is reported only once for each function it appears in gen6_mfc.c: At top level: gen6_mfc.c:960:1: error: unknown type name 'Bool' gen6_mfc.c: In function 'gen6_mfc_context_destroy': gen6_mfc.c:990:12: error: 'True' undeclared (first use in this function) gen6_mfc.c: At top level: gen6_mfc.c:388:13: warning: 'gen6_mfc_avc_directmode_state' defined but not used [-Wunused-function] gen6_mfc.c:599:1: warning: 'gen6_mfc_avc_insert_object' defined but not used [-Wunused-function] gen6_mfc.c: In function 'gen6_mfc_context_destroy': gen6_mfc.c:991:1: warning: control reaches end of non-void function [-Wreturn-type]gen6_vme.c: In function 'gen6_vme_output_buffer_setup': gen6_vme.c:295:5: error: expected expression before 'struct' gen6_mfc.c: In function 'gen6_mfc_context_init': gen6_mfc.c:958:1: warning: control reaches end of non-void function [-Wreturn-type] gen6_vme.c: In function 'gen7_vme_source_surface_state': gen6_vme.c:425:5: error: expected expression before 'struct' gen6_vme.c: In function 'gen7_vme_media_source_surface_state': gen6_vme.c:453:20: error: 'True' undeclared (first use in this function) gen6_vme.c:472:5: error: expected expression before 'struct' gen6_vme.c: In function 'gen7_vme_output_buffer_setup': gen6_vme.c:535:5: error: expected expression before 'struct' gen6_vme.c: In function 'gen6_vme_interface_setup': gen6_vme.c:609:9: error: expected expression before 'struct' gen6_vme.c:615:9: error: expected expression before 'struct' gen6_vme.c: In function 'gen6_vme_constant_setup': gen6_vme.c:632:20: warning: variable 'constant_buffer' set but not used [-Wunused-but-set-variable] gen6_vme.c: At top level: gen6_vme.c:951:1: error: unknown type name 'Bool' gen6_vme.c: In function 'gen6_vme_context_init': gen6_vme.c:973:12: error: 'True' undeclared (first use in this function) gen6_vme.c: At top level: gen6_vme.c:976:1: error: unknown type name 'Bool' gen6_vme.c: In function 'gen6_vme_context_destroy': gen6_vme.c:1003:12: error: 'True' undeclared (first use in this function) make[3]: *** [i965_drv_video_la-gen6_mfc.lo] Error 1 make[3]: *** Waiting for unfinished jobs.... gen6_vme.c:1004:1: warning: control reaches end of non-void function [-Wreturn-type] gen6_vme.c: In function 'gen6_vme_context_init': gen6_vme.c:974:1: warning: control reaches end of non-void function [-Wreturn-type] In file included from intel_batchbuffer.h:9:0, from gen6_mfd.c:36: intel_driver.h:112:1: error: unknown type name 'Bool' intel_driver.h:113:1: error: unknown type name 'Bool' make[3]: *** [i965_drv_video_la-gen6_vme.lo] Error 1 In file included from i965_render.h:36:0, from i965_drv_video.h:206, from gen6_mfd.c:40: i965_post_processing.h:370:1: error: unknown type name 'Bool' i965_post_processing.h:372:1: error: unknown type name 'Bool' In file included from i965_drv_video.h:206:0, from gen6_mfd.c:40: i965_render.h:82:1: error: unknown type name 'Bool' i965_render.h:83:1: error: unknown type name 'Bool' gen6_mfd.c: In function 'gen6_mfd_vc1_decode_init': gen6_mfd.c:1578:24: error: 'True' undeclared (first use in this function) gen6_mfd.c:1578:24: note: each undeclared identifier is reported only once for each function it appears in gen6_mfd.c: At top level: gen6_mfd.c:417:1: warning: 'gen6_mfd_aes_state' defined but not used [-Wunused-function] gen6_mfd.c:425:1: warning: 'gen6_mfd_wait' defined but not used [-Wunused-function] make[3]: *** [i965_drv_video_la-gen6_mfd.lo] Error 1 make[3]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' make: *** [all-recursive] Error 1
libva 1.1.0 exist at the moment no more, i know, but new API comming soon, and it would be nice to use the branch gG45-h264 also with the new API, if this support of decoding on the G45 is not included for some reason directly in main tree.
Fixed.
We need propably again merging remote-tracking branch 'origin/master' into g45-h264 (http://cgit.freedesktop.org/vaapi/intel-driver/commit/?h=g45-h264&id=b516758625b9f9c649d4a23070b4d8458dfdb8af), because 1.1.0 is out (again), and compilation is broken (again). Thanks!
Created attachment 68160 [details] broken compilation
Please, maintainers, if it is possible, give us some instructions or advices on how to do the merge by ourselves. Thank you.
Fixed. Sorry for slow response. BTW you can use git merge to join two branch.
Thank you haiho for your works and support! The last merge but i can not build: make[4]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/vme' make[4]: Nothing to be done for `all'. make[4]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders/vme' make[4]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders' make[4]: Nothing to be done for `all-am'. make[4]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders' make[3]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src/shaders' make[3]: Entering directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' CC i965_drv_video_la-dso_utils.lo CC i965_drv_video_la-gen6_mfc.lo CC i965_drv_video_la-gen6_mfd.lo CC i965_drv_video_la-gen6_vme.lo gen6_mfd.c:398:1: warning: 'gen6_mfd_aes_state' defined but not used [-Wunused-function] gen6_mfd.c:406:1: warning: 'gen6_mfd_wait' defined but not used [-Wunused-function] gen6_vme.c: In function 'gen6_vme_constant_setup': gen6_vme.c:630:20: warning: variable 'constant_buffer' set but not used [-Wunused-but-set-variable] gen6_mfc.c:388:13: warning: 'gen6_mfc_avc_directmode_state' defined but not used [-Wunused-function] gen6_mfc.c:599:1: warning: 'gen6_mfc_avc_insert_object' defined but not used [-Wunused-function] CC i965_drv_video_la-gen7_mfd.lo CC i965_drv_video_la-gen75_mfd.lo gen7_mfd.c:406:1: warning: 'gen7_mfd_aes_state' defined but not used [-Wunused-function] gen7_mfd.c:433:1: warning: 'gen7_mfd_wait' defined but not used [-Wunused-function] gen75_mfd.c: In function 'gen75_mfd_avc_picid_state': gen75_mfd.c:779:30: warning: unused variable 'i965' [-Wunused-variable] gen75_mfd.c: In function 'gen75_jpeg_wa_ind_obj_base_addr_state_bplus': gen75_mfd.c:3057:30: warning: unused variable 'i965' [-Wunused-variable] gen75_mfd.c: At top level: gen75_mfd.c:625:1: warning: 'gen75_mfd_aes_state' defined but not used [-Wunused-function] gen75_mfd.c:652:1: warning: 'gen75_mfd_wait' defined but not used [-Wunused-function] CC i965_drv_video_la-gen75_vme.lo gen75_vme.c: In function 'gen75_vme_prepare': gen75_vme.c:661:30: warning: unused variable 'i965' [-Wunused-variable] gen75_vme.c: In function 'gen75_vme_context_destroy': gen75_vme.c:760:2: warning: implicit declaration of function 'free' [-Wimplicit-function-declaration] gen75_vme.c:760:2: warning: incompatible implicit declaration of built-in function 'free' [enabled by default] CC i965_drv_video_la-gen75_mfc.lo gen75_mfc.c: In function 'gen75_mfc_avc_pipeline_programing': gen75_mfc.c:869:30: warning: unused variable 'i965' [-Wunused-variable] gen75_mfc.c: At top level: gen75_mfc.c:698:1: warning: 'gen75_mfc_avc_insert_object' defined but not used [-Wunused-function] CC i965_drv_video_la-gen75_vpp_vebox.lo CC i965_drv_video_la-i965_avc_bsd.lo CC i965_drv_video_la-i965_avc_hw_scoreboard.lo In file included from gen75_vpp_vebox.c:38:0: gen75_vpp_vebox.h:36:23: fatal error: va/va_vpp.h: No such file or directory compilation terminated. make[3]: *** [i965_drv_video_la-gen75_vpp_vebox.lo] Error 1 make[3]: *** Waiting for unfinished jobs.... make[3]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/ARCH/PKGBUILD/libva-driver-intel-g45-h264/src/intel-driver-g45-h264/src' make: *** [all-recursive] Error 1
haihao, i am very sorry, but i must open this bug again. the new driver of i965 - generation_75 need a file, but the fille is missing. This file va/va_vpp.h is in libva (not intel-driver!), branch staging http://cgit.freedesktop.org/libva/tree/va?h=staging. I am not shure, but i think, that the master tree is not possible build too, because missing file. Probably someone forgot to add this file. Anyway, in the tree intel-driver missing va/va_vpp.h. log - see comment 7. Thank you very much!
There is a va_vpp.h file in the include path on my build machine so I didn't catch such stupid error :(
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.