I. Compilation process for LIBVA.A
(1) apt-get install Libdrm-dev solve the problem libdrm can't find
(2) Wayland-scanner problem
Checking Pkg-config is at least version 0.9.0 ... Yes
Checking for Wayland_scanner ... no
Configure:error:Package requirements (Wayland-scanner) were not met:
No package ' Wayland-scanner ' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
Installed software in a non-standard prefix.
Alternatively, may set the environment variables Wayland_scanner_cflags
and wayland_scanner_libs to avoid the need-to-call pkg-config.
See the Pkg-config Mans page for more details.
Solve:
$ git clone git://anongit.freedesktop.org/wayland/wayland
$ CD Wayland
$./autogen.sh--prefix= $WLD
$ make && make install
$ CD.
(3)./autogen.sh Error, Workaround:
Apt-get Install autoconf
(4) Continue to install Wayland:
[Email protected]:/mnt/shared/wayland#./autogen.sh
Autoreconf:entering directory '. '
Autoreconf:configure.ac:not using Gettext
Autoreconf:running:aclocal--force-i M4 ${aclocal_flags}
Autoreconf:configure.ac:tracing
Autoreconf:configure.ac:not using Libtool
Autoreconf:running:/usr/bin/autoconf--force
Autoreconf:running:/usr/bin/autoheader--force
Autoreconf:running:automake--add-missing--copy--force-missing
Configure.ac:23:installing './install-sh '
Configure.ac:23:installing './missing '
Makefile.am:140:error:libtool library used but ' Libtool ' is undefined
Makefile.am:140:the usual define ' LIBTOOL ' is to add ' lt_init '
Makefile.am:140:to ' Configure.ac ' and run ' aclocal ' and ' autoconf ' again.
Makefile.am:140:if ' Lt_init ' is in ' configure.ac ', make sure
Makefile.am:140:its definition is in aclocal ' s search path.
Makefile.am:installing './depcomp '
Parallel-tests:installing './test-driver '
Autoreconf:automake failed with exit Status:1
[Email protected]:/mnt/shared/wayland#
(5) Error:libtool library used but ' Libtool ' is undefined
Workaround: Apt-get Install Libtool test
(6) Continue compiling Wayland
Configure:error:Package requirements (Libffi) were not met:
No package ' Libffi ' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
Installed software in a non-standard prefix.
Alternatively, may set the environment variables Ffi_cflags
and ffi_libs to avoid the need-to-call pkg-config.
See the Pkg-config Mans page for more details.
[Email protected]:/mnt/shared/wayland#
Workaround: Download and install the Libffi library:
wget ftp://sourceware.org/pub/libffi/libffi-3.1.tar.gz
./configure
Make
Make install
(7) Continue compiling Wayland
./autogen.sh
The following error occurred:
Configure:error:Can ' t find expat.h. Please install expat.
Workaround:
Apt-get Install Libexpat-dev
(8) Continue compiling Wayland:
./autogen.sh
The following problems occur:
Checking for Doxygen ... no
Configure:error:Documentation build requested but doxygen not found. Install Doxygen or disable the documentation using--disable-documentation
[Email protected]:/mnt/shared/wayland#
Workaround:
./configure--disable-documentation
(9) Configuration Wayland Successful, compile and install:
Make
Make install
(10) Compiling LIBVA.A
./configure
Configuration by
Make
Make install
(11) found that the compiled is a dynamic library,/usr/local/lib:
Solution, the Libva-1.3.1/va/makefile in the libva_ldflags after adding-STAITC, can be compiled out LIBVA.A
Libva_ldflags = \
$ (ldadd)-static-no-undefined \
-WL,-VERSION-SCRIPT,LIBVA.SYMS \
$ (NULL)
LIBVA's compilation is done.
(ii) compilation process of I965_DRV_VIDEO.A
(1)
./configure
Make
Error:
In file included from i965_drv_video.c:37:0:
I965_output_wayland.h:31:26:error:unknown type name ' VADRIVERCONTEXTP '
I965_output_wayland_init (Vadrivercontextp ctx);
^
I965_output_wayland.h:34:31:error:unknown type name ' VADRIVERCONTEXTP '
I965_output_wayland_terminate (Vadrivercontextp ctx);
^
I965_drv_video.c:5243:9: Error: ' I965_output_wayland_init ' undeclared here (not in a function)
I965_output_wayland_init,
^
I965_drv_video.c:5244:9: Error: ' I965_output_wayland_terminate ' undeclared here (not in a function)
I965_output_wayland_terminate,
^
MAKE[3]: * * * [I965_drv_video_la-i965_drv_video.lo] Error 1
MAKE[3]: Leaving directory '/MNT/SHARED/LIBVA-INTEL-DRIVER-1.3.2/SRC '
MAKE[2]: * * * [all-recursive] Error 1
MAKE[2]: Leaving directory '/MNT/SHARED/LIBVA-INTEL-DRIVER-1.3.2/SRC '
MAKE[1]: * * [ALL] Error 2
MAKE[1]: Leaving directory '/MNT/SHARED/LIBVA-INTEL-DRIVER-1.3.2/SRC '
Make: * * * [all-recursive] Error 1
(2)
[Email protected]:/usr/local/include/va# ls
Va_backend.h va_backend_vpp.h va_compat.h va_dec_vp8.h va_drm.h va_enc_mpeg2.h va_tpi.h VA_VPP . h
va_backend_tpi.h va_backend_wayland.h va_dec_jpeg.h va_drmcommon.h va_enc_h264.h va.h va_version.h va_way Land.h
[Email protected]:/usr/local/include/va# pwd
/usr/local/include/va
Need to include the header file for this directory
Copy the va_backend.h to the SRC directory and add it in the I965_output_wayland.h:
#include "Va_backend.h"
And then it was compiled and passed.
(3) Find./-name *.so
./.libs/i965_drv_video.so
But the same is not i965_drv_video.a.
So we use the same method to add-static to the connection.
480 driver_ldflags = \
481-module-avoid-version \
482-no-undefined \
483-WL,--no-undefined \
484-static \
485 $ (NULL)
I965_DRV_VIDEO.A is generated under Src/.libs.
Compilation--libva.a and I965_DRV_VIDEO.A of Vaapi