diff mbox

[v2,1/2] libimxvpuapi: add new package

Message ID 20160216215313.15f228fe@gmx.net
State Not Applicable
Headers show

Commit Message

Peter Seiderer Feb. 16, 2016, 8:53 p.m. UTC
Hello Gary,

On Mon,  1 Feb 2016 22:55:58 +0100, Gary Bisson <gary.bisson@boundarydevices.com> wrote:

> This is a library for using the i.MX6 VPU. It is an alternative to
> libfslvpuwrap, hosted on Github, and has an API that features several
> improvements over libfslvpuwrap, which include:
> 
> * User-defined context information associated with input frames, which
> is passed on to corresponding output frames (to be able to identify
> which input frame produced which output frame)
> * Groundwork for future DMA-BUF/BMM/ION/CMA allocator integration, using
> file descriptors instead of physical addresses
> * Indicators for when it is safe to try to decode frames, which is
> critical in multi-threaded playback cases
> * Simplified, higher-level JPEG en/decoding API, based on the VPU MJPEG
> codec; useful for picture viewing without the extra boilerplate for
> VPU-based en/decoding
> 
> Changelog 0.10.0 -> 0.10.1:
> - add debian packaging files
> - update waf to version 1.8.16
> - add workaround in wscript to prevent stale pkg-config .pc files
> - fix memory leak by adding missing IOFreeVirtMem() call in vpulib
> backend
> 
> This patch is based on the Yocto equivalent:
> https://github.com/Freescale/meta-fsl-arm/commit/e519d6c
> https://github.com/Freescale/meta-fsl-arm/commit/1dd6a5b
> 
> This package has been implicitely tested through gstreamer as the
> plugins rely on it for vpu decoding:
>  # gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
> 
> Changelog v1->v2:
> - add hash file
> - add upstream URL
> - change license to LGPLv2.1+
> 
> Thanks,
> Gary
> 
> ---
>  package/Config.in                      |  1 +
>  package/libimxvpuapi/Config.in         | 12 ++++++++++++
>  package/libimxvpuapi/libimxvpuapi.hash |  2 ++
>  package/libimxvpuapi/libimxvpuapi.mk   | 35 ++++++++++++++++++++++++++++++++++
>  4 files changed, 50 insertions(+)
>  create mode 100644 package/libimxvpuapi/Config.in
>  create mode 100644 package/libimxvpuapi/libimxvpuapi.hash
>  create mode 100644 package/libimxvpuapi/libimxvpuapi.mk
> 
> diff --git a/package/Config.in b/package/Config.in
> index 09c2b40..d3e5e30 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1033,6 +1033,7 @@ menu "Multimedia"
>  	source "package/libfslparser/Config.in"
>  	source "package/libfslvpuwrap/Config.in"
>  	source "package/libhdhomerun/Config.in"
> +	source "package/libimxvpuapi/Config.in"
>  	source "package/libmatroska/Config.in"
>  	source "package/libmms/Config.in"
>  	source "package/libmpeg2/Config.in"
> diff --git a/package/libimxvpuapi/Config.in b/package/libimxvpuapi/Config.in
> new file mode 100644
> index 0000000..a48e441
> --- /dev/null
> +++ b/package/libimxvpuapi/Config.in
> @@ -0,0 +1,12 @@
> +config BR2_PACKAGE_LIBIMXVPUAPI
> +	bool "libimxvpuapi"
> +	depends on BR2_arm # Only relevant for i.MX
> +	select BR2_PACKAGE_FREESCALE_IMX
> +	select BR2_PACKAGE_IMX_VPU
> +	help
> +	  This library provides an API for using the iMX6 VPU video engine. It
> +	  is an alternative to Freescale's VPU wrapper. Both the wrapper and
> +	  this library are layered on top of imx-vpu, the low-level iMX6 VPU
> +	  interface.
> +
> +	  https://github.com/Freescale/libimxvpuapi
> diff --git a/package/libimxvpuapi/libimxvpuapi.hash b/package/libimxvpuapi/libimxvpuapi.hash
> new file mode 100644
> index 0000000..fd90a20
> --- /dev/null
> +++ b/package/libimxvpuapi/libimxvpuapi.hash
> @@ -0,0 +1,2 @@
> +# locally computed hash
> +sha256 8d7aeed88c06fda44318cef9565ae47b86461bd309908b1103a7974ed0822a8d  libimxvpuapi-0.10.1.tar.gz
> diff --git a/package/libimxvpuapi/libimxvpuapi.mk b/package/libimxvpuapi/libimxvpuapi.mk
> new file mode 100644
> index 0000000..8e62682
> --- /dev/null
> +++ b/package/libimxvpuapi/libimxvpuapi.mk
> @@ -0,0 +1,35 @@
> +################################################################################
> +#
> +# libimxvpuapi
> +#
> +################################################################################
> +
> +LIBIMXVPUAPI_VERSION = 0.10.1
> +LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION))
> +LIBIMXVPUAPI_LICENSE = LGPLv2.1+
> +LIBIMXVPUAPI_LICENSE_FILES = LICENSE
> +LIBIMXVPUAPI_DEPENDENCIES = host-pkgconf host-python imx-vpu
> +LIBIMXVPUAPI_INSTALL_STAGING = YES
> +
> +define LIBIMXVPUAPI_CONFIGURE_CMDS
> +	cd $(@D); \
> +	$(TARGET_CONFIGURE_OPTS) $(HOST_DIR)/usr/bin/python2 ./waf configure \
> +		--prefix=/usr
> +endef

On my x86_64 (OpenSUSE-13.2) host build the libs and libimxvpuapi.pc
are installed into $(STAGING_DIR)/usr/lib64 and $(TARGET_DIR)/usr/lib64.

To be usable by eg. gst1-imx the install path should be $(STAGING_DIR)/usr/lib
and $(TARGET_DIR)/usr/lib. To achieve this I added '--libdir=/usr/lib' to
overwrite the default '/usr/lib64':



With this you can add my

Tested-by: Peter Seiderer <ps.report@gmx.net>

for '...! imxvpudec ! imxipuvideosink'

But I had problems using the imxeglvivsink element and
with qt5 eglfs, suspecting your 'Update most Freescale packages' patch series
(using buildroot-2016.02-rc1 with your '[PATCH v3 0/2] gst1-imx: bump version to 0.12.0'
patches on top), but did not find time yet to investigate further...

Regards,
Peter

> +
> +define LIBIMXVPUAPI_BUILD_CMDS
> +	cd $(@D); \
> +	$(HOST_DIR)/usr/bin/python2 ./waf build -j $(PARALLEL_JOBS)
> +endef
> +
> +define LIBIMXVPUAPI_INSTALL_STAGING_CMDS
> +	cd $(@D); \
> +	$(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(STAGING_DIR) install
> +endef
> +
> +define LIBIMXVPUAPI_INSTALL_TARGET_CMDS
> +	cd $(@D); \
> +	$(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(TARGET_DIR) install
> +endef
> +
> +$(eval $(generic-package))

Comments

Gary Bisson Feb. 16, 2016, 10:57 p.m. UTC | #1
Peter, All,

On Tue, Feb 16, 2016 at 9:53 PM, Peter Seiderer <ps.report@gmx.net> wrote:
>
> Hello Gary,
>
> On Mon,  1 Feb 2016 22:55:58 +0100, Gary Bisson <gary.bisson@boundarydevices.com> wrote:
>
> > <snip>
> > +LIBIMXVPUAPI_VERSION = 0.10.1
> > +LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION))
> > +LIBIMXVPUAPI_LICENSE = LGPLv2.1+
> > +LIBIMXVPUAPI_LICENSE_FILES = LICENSE
> > +LIBIMXVPUAPI_DEPENDENCIES = host-pkgconf host-python imx-vpu
> > +LIBIMXVPUAPI_INSTALL_STAGING = YES
> > +
> > +define LIBIMXVPUAPI_CONFIGURE_CMDS
> > +     cd $(@D); \
> > +     $(TARGET_CONFIGURE_OPTS) $(HOST_DIR)/usr/bin/python2 ./waf configure \
> > +             --prefix=/usr
> > +endef
>
> On my x86_64 (OpenSUSE-13.2) host build the libs and libimxvpuapi.pc
> are installed into $(STAGING_DIR)/usr/lib64 and $(TARGET_DIR)/usr/lib64.
>
> To be usable by eg. gst1-imx the install path should be $(STAGING_DIR)/usr/lib
> and $(TARGET_DIR)/usr/lib. To achieve this I added '--libdir=/usr/lib' to
> overwrite the default '/usr/lib64':

I'd like to understand why it behaves like this with your setup. I'm
using a 64-bit OS too (Debian Testing) but the libs go to /usr/lib as
expected.

Could you pastebin the full log of libimxvpuapi build, your buildroot
configuration as well as you 'env'?

> --- a/package/libimxvpuapi/libimxvpuapi.mk
> +++ b/package/libimxvpuapi/libimxvpuapi.mk
> @@ -14,7 +14,7 @@ LIBIMXVPUAPI_INSTALL_STAGING = YES
>  define LIBIMXVPUAPI_CONFIGURE_CMDS
>         cd $(@D); \
>         $(TARGET_CONFIGURE_OPTS) $(HOST_DIR)/usr/bin/python2 ./waf configure \
> -               --prefix=/usr
> +               --prefix=/usr --libdir=/usr/lib
>  endef
>
>  define LIBIMXVPUAPI_BUILD_CMDS
>
>
> With this you can add my
>
> Tested-by: Peter Seiderer <ps.report@gmx.net>
>
> for '...! imxvpudec ! imxipuvideosink'

Ok, I'll do that once I understand the difference which requires this
libdir argument.

> But I had problems using the imxeglvivsink element and
> with qt5 eglfs, suspecting your 'Update most Freescale packages' patch series
> (using buildroot-2016.02-rc1 with your '[PATCH v3 0/2] gst1-imx: bump version to 0.12.0'
> patches on top), but did not find time yet to investigate further...

Does a basic gstreamer pipeline work?
# gst-launch-1.0 videotestsrc ! imxeglvivsink

If not there's no wonder qt5 doesn't like it. I haven't tried qt5 but
I'm sure the gstreamer imxeglvivsink does work.

In case you've enabled BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV, you
might need to load the Galcore module manually in case you don't have
eudev for instance:
# insmod /lib/modules/3.14.28/extra/galcore.ko

Regards,
Gary
Peter Seiderer Feb. 17, 2016, 9:26 a.m. UTC | #2
Hello Gary,

> Gesendet: Dienstag, 16. Februar 2016 um 23:57 Uhr
> Von: "Gary Bisson" <gary.bisson@boundarydevices.com>
> An: "Peter Seiderer" <ps.report@gmx.net>
> Cc: buildroot@busybox.net, "Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>
> Betreff: Re: [Buildroot] [PATCH v2 1/2] libimxvpuapi: add new package

[snip]

> 
> > But I had problems using the imxeglvivsink element and
> > with qt5 eglfs, suspecting your 'Update most Freescale packages' patch series
> > (using buildroot-2016.02-rc1 with your '[PATCH v3 0/2] gst1-imx: bump version to 0.12.0'
> > patches on top), but did not find time yet to investigate further...
> 
> Does a basic gstreamer pipeline work?
> # gst-launch-1.0 videotestsrc ! imxeglvivsink
>

No:

$ GST_DEBUG=*:3 gst-launch-1.0 videotestsrc ! imxeglvivsink
Setting pipeline to PAUSED ...
mxc_sdc_fb fb.20: 1920x1080 h_sync,r,l: 44,88,148  v_sync,l,u: 5,4,36 pixclock=148500000 Hz
imx-ipuv3 2800000.ipu: try ipu internal clk
imx-ipuv3 2800000.ipu: disp=0, pixel_clk=148500000 148500000 parent=148500000 div=1
0:00:00.229253000   245   0x9d1ee0 ERROR      imxeglplatform_fb egl_platform_fb.c:72:gst_imx_egl_viv_sink_egl_platform_create: eglGetDisplay failed: bad alloc
ERROR: Pipeline doesn't want to pause.
Setting pipeline to NULL ...
Freeing pipeline ...
mxc_sdc_fb fb.20: 1920x1080 h_sync,r,l: 44,88,148  v_sync,l,u: 5,4,36 pixclock=148500000 Hz
imx-ipuv3 2800000.ipu: try ipu internal clk
imx-ipuv3 2800000.ipu: disp=0, pixel_clk=148500000 148500000 parent=148500000 div=1

Using Buildroot-2016-02-rc1 with
https://patchwork.ozlabs.org/patch/577011/mbox/
https://patchwork.ozlabs.org/patch/577012/mbox/
and 'qt5tools: new package' patches on top with the following defconfig (based on
the original nitrogen6x_defconfig config):

BR2_arm=y
BR2_cortex_a9=y
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_14=y
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
BR2_GLIBC_VERSION_2_22=y
BR2_BINUTILS_VERSION_2_25_X=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
BR2_ROOTFS_POST_BUILD_SCRIPT="board/boundarydevices/nitrogen6x/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/boundarydevices/nitrogen6x/post-image.sh"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/tarball/f4c8395/linux-imx6-f4c8395.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="boundary"
BR2_LINUX_KERNEL_ZIMAGE=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6dl-nit6xlite imx6dl-nitrogen6_vm imx6dl-nitrogen6x imx6q-nitrogen6x imx6q-nitrogen6_max imx6q-sabrelite"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_PACKAGE_GSTREAMER1=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOTESTSRC=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOTESTSRC=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA=y
BR2_PACKAGE_GST1_PLUGINS_GOOD=y
BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2=y
BR2_PACKAGE_GST1_PLUGINS_BAD=y
BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOPARSERS=y
BR2_PACKAGE_GST1_PLUGINS_UGLY=y
BR2_PACKAGE_GST1_IMX=y
BR2_PACKAGE_BINUTILS=y
BR2_PACKAGE_DEJAVU=y
BR2_PACKAGE_QT5=y
BR2_PACKAGE_QT5BASE_LICENSE_APPROVED=y
BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM=y
BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
BR2_PACKAGE_QT5BASE_LINUXFB=y
BR2_PACKAGE_QT5BASE_EGLFS=y
BR2_PACKAGE_QT5BASE_DEFAULT_QPA="eglfs"
BR2_PACKAGE_QT5BASE_FONTCONFIG=y
BR2_PACKAGE_QT5BASE_GIF=y
BR2_PACKAGE_QT5BASE_JPEG=y
BR2_PACKAGE_QT5BASE_PNG=y
BR2_PACKAGE_QT5GRAPHICALEFFECTS=y
BR2_PACKAGE_QT5MULTIMEDIA=y
BR2_PACKAGE_QT5QUICKCONTROLS=y
BR2_PACKAGE_QT5SERIALPORT=y
BR2_PACKAGE_QT5TOOLS=y
BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS=y
BR2_PACKAGE_QT5WEBSOCKETS=y
BR2_PACKAGE_QT5SCRIPT=y
BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
BR2_PACKAGE_IMX_LIB=y
BR2_PACKAGE_IMX_GPU_VIV=y
BR2_PACKAGE_OPENSSL=y
BR2_PACKAGE_LIBV4L=y
BR2_PACKAGE_LIBV4L_UTILS=y
BR2_PACKAGE_LIBIMXVPUAPI=y
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="nitrogen6q"
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="http://github.com/boundarydevices/u-boot-imx6/tarball/a4070a8/u-boot-a4070a8.tar.gz"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y

> If not there's no wonder qt5 doesn't like it. I haven't tried qt5 but
> I'm sure the gstreamer imxeglvivsink does work.
> 

My last working version was based on buildroot-2015.11.1 plus 'qt5: bump version to 5.5.1' and
'qt5tools: new package' on top...

> In case you've enabled BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV, you
> might need to load the Galcore module manually in case you don't have
> eudev for instance:
> # insmod /lib/modules/3.14.28/extra/galcore.ko

No, working with boundarydevices linux-imx6-f4c8395 and original boundary config
and there is a '/dev/galcore' entry on the target...

Regards,
Peter

> 
> Regards,
> Gary
>
Gary Bisson Feb. 17, 2016, 9:37 a.m. UTC | #3
Hi Peter,

On Wed, Feb 17, 2016 at 10:26 AM, Peter Seiderer <ps.report@gmx.net> wrote:
>
> Hello Gary,
>
> > Gesendet: Dienstag, 16. Februar 2016 um 23:57 Uhr
> > Von: "Gary Bisson" <gary.bisson@boundarydevices.com>
> > An: "Peter Seiderer" <ps.report@gmx.net>
> > Cc: buildroot@busybox.net, "Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>
> > Betreff: Re: [Buildroot] [PATCH v2 1/2] libimxvpuapi: add new package
>
> [snip]
>
> >
> > > But I had problems using the imxeglvivsink element and
> > > with qt5 eglfs, suspecting your 'Update most Freescale packages' patch series
> > > (using buildroot-2016.02-rc1 with your '[PATCH v3 0/2] gst1-imx: bump version to 0.12.0'
> > > patches on top), but did not find time yet to investigate further...
> >
> > Does a basic gstreamer pipeline work?
> > # gst-launch-1.0 videotestsrc ! imxeglvivsink
> >
>
> No:
>
> $ GST_DEBUG=*:3 gst-launch-1.0 videotestsrc ! imxeglvivsink
> Setting pipeline to PAUSED ...
> mxc_sdc_fb fb.20: 1920x1080 h_sync,r,l: 44,88,148  v_sync,l,u: 5,4,36 pixclock=148500000 Hz
> imx-ipuv3 2800000.ipu: try ipu internal clk
> imx-ipuv3 2800000.ipu: disp=0, pixel_clk=148500000 148500000 parent=148500000 div=1
> 0:00:00.229253000   245   0x9d1ee0 ERROR      imxeglplatform_fb egl_platform_fb.c:72:gst_imx_egl_viv_sink_egl_platform_create: eglGetDisplay failed: bad alloc
> ERROR: Pipeline doesn't want to pause.
> Setting pipeline to NULL ...
> Freeing pipeline ...
> mxc_sdc_fb fb.20: 1920x1080 h_sync,r,l: 44,88,148  v_sync,l,u: 5,4,36 pixclock=148500000 Hz
> imx-ipuv3 2800000.ipu: try ipu internal clk
> imx-ipuv3 2800000.ipu: disp=0, pixel_clk=148500000 148500000 parent=148500000 div=1
>
> Using Buildroot-2016-02-rc1 with
> https://patchwork.ozlabs.org/patch/577011/mbox/
> https://patchwork.ozlabs.org/patch/577012/mbox/

The setup I tried yesterday was:
- Buildroot master commit f3fac0dcfdf (post 2016.02-rc1).
- Plus the two patches you mention above

> and 'qt5tools: new package' patches on top with the following defconfig (based on
> the original nitrogen6x_defconfig config):
>
> BR2_arm=y
> BR2_cortex_a9=y
> BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_14=y
> BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
> BR2_GLIBC_VERSION_2_22=y
> BR2_BINUTILS_VERSION_2_25_X=y
> BR2_TOOLCHAIN_BUILDROOT_CXX=y
> BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
> BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
> BR2_ROOTFS_POST_BUILD_SCRIPT="board/boundarydevices/nitrogen6x/post-build.sh"
> BR2_ROOTFS_POST_IMAGE_SCRIPT="board/boundarydevices/nitrogen6x/post-image.sh"
> BR2_LINUX_KERNEL=y
> BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
> BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/tarball/f4c8395/linux-imx6-f4c8395.tar.gz"
> BR2_LINUX_KERNEL_DEFCONFIG="boundary"
> BR2_LINUX_KERNEL_ZIMAGE=y
> BR2_LINUX_KERNEL_DTS_SUPPORT=y
> BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6dl-nit6xlite imx6dl-nitrogen6_vm imx6dl-nitrogen6x imx6q-nitrogen6x imx6q-nitrogen6_max imx6q-sabrelite"
> BR2_LINUX_KERNEL_INSTALL_TARGET=y
> BR2_PACKAGE_GSTREAMER1=y
> BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP=y
> BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOTESTSRC=y
> BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOTESTSRC=y
> BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA=y
> BR2_PACKAGE_GST1_PLUGINS_GOOD=y
> BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2=y
> BR2_PACKAGE_GST1_PLUGINS_BAD=y
> BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOPARSERS=y
> BR2_PACKAGE_GST1_PLUGINS_UGLY=y
> BR2_PACKAGE_GST1_IMX=y
> BR2_PACKAGE_BINUTILS=y
> BR2_PACKAGE_DEJAVU=y
> BR2_PACKAGE_QT5=y
> BR2_PACKAGE_QT5BASE_LICENSE_APPROVED=y
> BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM=y
> BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
> BR2_PACKAGE_QT5BASE_LINUXFB=y
> BR2_PACKAGE_QT5BASE_EGLFS=y
> BR2_PACKAGE_QT5BASE_DEFAULT_QPA="eglfs"
> BR2_PACKAGE_QT5BASE_FONTCONFIG=y
> BR2_PACKAGE_QT5BASE_GIF=y
> BR2_PACKAGE_QT5BASE_JPEG=y
> BR2_PACKAGE_QT5BASE_PNG=y
> BR2_PACKAGE_QT5GRAPHICALEFFECTS=y
> BR2_PACKAGE_QT5MULTIMEDIA=y
> BR2_PACKAGE_QT5QUICKCONTROLS=y
> BR2_PACKAGE_QT5SERIALPORT=y
> BR2_PACKAGE_QT5TOOLS=y
> BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS=y
> BR2_PACKAGE_QT5WEBSOCKETS=y
> BR2_PACKAGE_QT5SCRIPT=y
> BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
> BR2_PACKAGE_IMX_LIB=y
> BR2_PACKAGE_IMX_GPU_VIV=y
> BR2_PACKAGE_OPENSSL=y
> BR2_PACKAGE_LIBV4L=y
> BR2_PACKAGE_LIBV4L_UTILS=y
> BR2_PACKAGE_LIBIMXVPUAPI=y
> BR2_TARGET_ROOTFS_EXT2=y
> BR2_TARGET_ROOTFS_EXT2_4=y
> BR2_TARGET_UBOOT=y
> BR2_TARGET_UBOOT_BOARDNAME="nitrogen6q"
> BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
> BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="http://github.com/boundarydevices/u-boot-imx6/tarball/a4070a8/u-boot-a4070a8.tar.gz"
> BR2_TARGET_UBOOT_FORMAT_IMX=y
> BR2_PACKAGE_HOST_GENIMAGE=y
> BR2_PACKAGE_HOST_UBOOT_TOOLS=y
>
> > If not there's no wonder qt5 doesn't like it. I haven't tried qt5 but
> > I'm sure the gstreamer imxeglvivsink does work.
> >
>
> My last working version was based on buildroot-2015.11.1 plus 'qt5: bump version to 5.5.1' and
> 'qt5tools: new package' on top...
>
> > In case you've enabled BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV, you
> > might need to load the Galcore module manually in case you don't have
> > eudev for instance:
> > # insmod /lib/modules/3.14.28/extra/galcore.ko
>
> No, working with boundarydevices linux-imx6-f4c8395 and original boundary config
> and there is a '/dev/galcore' entry on the target...

Yes but that is the problem. Please try again with
BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV.

As you know, 3D graphics libraries match a specific kernel driver.
Since it was an issue for many people, Vivante started to provide a
kernel module so you can easily have the latest driver on an older
kernel.

Since I've updated the graphics to the latest (5.0.11 p7.1), the
driver inside the 3.14.28 kernel is outdated so you need to use the
Vivante kernel module. I didn't for the selection of the kernel module
when the libraries are selected since some kernels (3.14.52) have the
correct driver built-in.

Sorry for the confusion but know that if you want to make sure the
driver matches the user-space blobs, always select the Vivante kernel
module as I'll make to always update both at the same time.

Regards,
Gary
Peter Seiderer Feb. 17, 2016, 9:45 a.m. UTC | #4
Hello Gary,

> Gesendet: Dienstag, 16. Februar 2016 um 23:57 Uhr
> Von: "Gary Bisson" <gary.bisson@boundarydevices.com>
> An: "Peter Seiderer" <ps.report@gmx.net>
> Cc: buildroot@busybox.net, "Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>
> Betreff: Re: [Buildroot] [PATCH v2 1/2] libimxvpuapi: add new package
>
> Peter, All,
> 
> On Tue, Feb 16, 2016 at 9:53 PM, Peter Seiderer <ps.report@gmx.net> wrote:
> >
> > Hello Gary,
> >
> > On Mon,  1 Feb 2016 22:55:58 +0100, Gary Bisson <gary.bisson@boundarydevices.com> wrote:
> >
> > > <snip>
> > > +LIBIMXVPUAPI_VERSION = 0.10.1
> > > +LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION))
> > > +LIBIMXVPUAPI_LICENSE = LGPLv2.1+
> > > +LIBIMXVPUAPI_LICENSE_FILES = LICENSE
> > > +LIBIMXVPUAPI_DEPENDENCIES = host-pkgconf host-python imx-vpu
> > > +LIBIMXVPUAPI_INSTALL_STAGING = YES
> > > +
> > > +define LIBIMXVPUAPI_CONFIGURE_CMDS
> > > +     cd $(@D); \
> > > +     $(TARGET_CONFIGURE_OPTS) $(HOST_DIR)/usr/bin/python2 ./waf configure \
> > > +             --prefix=/usr
> > > +endef
> >
> > On my x86_64 (OpenSUSE-13.2) host build the libs and libimxvpuapi.pc
> > are installed into $(STAGING_DIR)/usr/lib64 and $(TARGET_DIR)/usr/lib64.
> >
> > To be usable by eg. gst1-imx the install path should be $(STAGING_DIR)/usr/lib
> > and $(TARGET_DIR)/usr/lib. To achieve this I added '--libdir=/usr/lib' to
> > overwrite the default '/usr/lib64':
> 
> I'd like to understand why it behaves like this with your setup. I'm
> using a 64-bit OS too (Debian Testing) but the libs go to /usr/lib as
> expected.
> 
> Could you pastebin the full log of libimxvpuapi build, your buildroot
> configuration as well as you 'env'?
> 

Build log attached (rm -r build/libimxvpuapi-0.10.1; make V=1 2>&1 | tee out_build_libimxvpuapi_orig.txt),
same buildroot setup as in previous e-mail: out_build_libimxvpuapi_orig.txt

$ cd build/libimxvpuapi-0.10.1/
$ /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/python2 ./waf configure --help
...
    --libdir=LIBDIR     object code libraries [EXEC_PREFIX/lib64]
...

$ env
LESSKEY=/etc/lesskey.bin
NNTPSERVER=news
MANPATH=/usr/local/man:/usr/share/man
HOSTNAME=XXXXXXX
XKEYSYMDB=/usr/X11R6/lib/X11/XKeysymDB
HOST=XXXXXXX
TERM=rxvt-unicode-256color
SHELL=/bin/bash
PROFILEREAD=true
HISTSIZE=1000
MORE=-sl
JRE_HOME=/usr/lib64/jvm/java/jre
USER=seiderer
LS_COLORS=
XNLSPATH=/usr/share/X11/nls
QEMU_AUDIO_DRV=pa
HOSTTYPE=x86_64
CONFIG_SITE=/usr/share/site/x86_64-unknown-linux-gnu
FROM_HEADER=
PAGER=less
CSHEDIT=emacs
XDG_CONFIG_DIRS=/etc/xdg
LIBGL_DEBUG=quiet
MINICOM=-c on
MAIL=/var/mail/seiderer
PATH=/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
CPU=x86_64
JAVA_BINDIR=/usr/lib64/jvm/java/bin
INPUTRC=/home/seiderer/.inputrc
PWD=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1
gopher_proxy=
JAVA_HOME=/usr/lib64/jvm/java
LANG=en_US.UTF-8
PYTHONSTARTUP=/etc/pythonstart
SDK_HOME=/usr/lib64/jvm/java
GPG_TTY=/dev/pts/3
AUDIODRIVER=pulseaudio
QT_SYSTEM_DIR=/usr/share/desktop-data
JDK_HOME=/usr/lib64/jvm/java
SHLVL=1
HOME=/home/seiderer
ALSA_CONFIG_PATH=/etc/alsa-pulse.conf
SDL_AUDIODRIVER=pulse
LESS_ADVANCED_PREPROCESSOR=no
OSTYPE=linux
LS_OPTIONS=-N --color=none -T 0
WINDOWMANAGER=/usr/bin/gnome
G_FILENAME_ENCODING=@locale,UTF-8,ISO-8859-15,CP1252
LESS=-M -I -R
MACHTYPE=x86_64-suse-linux
LOGNAME=seiderer
CVS_RSH=ssh
XDG_DATA_DIRS=/usr/share
SSH_CONNECTION=10.5.121.193 49159 10.5.123.15 22
LESSOPEN=lessopen.sh %s
XDG_RUNTIME_DIR=/run/user/1000
DISPLAY=localhost:13.0
XAUTHLOCALHOSTNAME=DLxX9PSE02
NO_AT_BRIDGE=1
LESSCLOSE=lessclose.sh %s %s
G_BROKEN_FILENAMES=1
JAVA_ROOT=/usr/lib64/jvm/java
COLORTERM=1
BASH_FUNC_mc%%=() {  . /usr/share/mc/mc-wrapper.sh
}
OLDPWD=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001
_=/usr/bin/env

Regards,
Peter

> > --- a/package/libimxvpuapi/libimxvpuapi.mk
> > +++ b/package/libimxvpuapi/libimxvpuapi.mk
> > @@ -14,7 +14,7 @@ LIBIMXVPUAPI_INSTALL_STAGING = YES
> >  define LIBIMXVPUAPI_CONFIGURE_CMDS
> >         cd $(@D); \
> >         $(TARGET_CONFIGURE_OPTS) $(HOST_DIR)/usr/bin/python2 ./waf configure \
> > -               --prefix=/usr
> > +               --prefix=/usr --libdir=/usr/lib
> >  endef
> >
> >  define LIBIMXVPUAPI_BUILD_CMDS
> >
> >
> > With this you can add my
> >
> > Tested-by: Peter Seiderer <ps.report@gmx.net>
> >
> > for '...! imxvpudec ! imxipuvideosink'
> 
> Ok, I'll do that once I understand the difference which requires this
> libdir argument.
> 
> > But I had problems using the imxeglvivsink element and
> > with qt5 eglfs, suspecting your 'Update most Freescale packages' patch series
> > (using buildroot-2016.02-rc1 with your '[PATCH v3 0/2] gst1-imx: bump version to 0.12.0'
> > patches on top), but did not find time yet to investigate further...
> 
> Does a basic gstreamer pipeline work?
> # gst-launch-1.0 videotestsrc ! imxeglvivsink
> 
> If not there's no wonder qt5 doesn't like it. I haven't tried qt5 but
> I'm sure the gstreamer imxeglvivsink does work.
> 
> In case you've enabled BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV, you
> might need to load the Galcore module manually in case you don't have
> eudev for instance:
> # insmod /lib/modules/3.14.28/extra/galcore.ko
> 
> Regards,
> Gary
>
umask 0022 && make -C /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1 O=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/. 
/usr/bin/make -j1 O=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/. HOSTCC="/usr/bin/gcc" HOSTCXX="/usr/bin/g++" silentoldconfig
/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/support/scripts/mkmakefile /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1 /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/.
  GEN     /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/./Makefile
BR2_DEFCONFIG='' KCONFIG_AUTOCONFIG=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/buildroot-config/auto.conf KCONFIG_AUTOHEADER=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/buildroot-config/autoconf.h KCONFIG_TRISTATE=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/buildroot-config/tristate.config BR2_CONFIG=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/./.config BR2_EXTERNAL=support/dummy-external HOST_GCC_VERSION="4 8" SKIP_LEGACY= /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/buildroot-config/conf --silentoldconfig Config.in
for p in   https://github.com/Freescale/libimxvpuapi/archive/0.10.1/libimxvpuapi-0.10.1.tar.gz; do \
	if test ! -e /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/`basename $p` ; then \
		echo ">>> libimxvpuapi 0.10.1 Downloading" ; \
		break ; \
	fi ; \
done
if test -n "" ; then case "" in file) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b cp -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz -H package/libimxvpuapi//libimxvpuapi.hash  -- /libimxvpuapi-0.10.1.tar.gz && exit ;; scp) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b scp -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz -H package/libimxvpuapi//libimxvpuapi.hash  -- '/libimxvpuapi-0.10.1.tar.gz' && exit ;; *) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b wget -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz -H package/libimxvpuapi//libimxvpuapi.hash  -- '/libimxvpuapi-0.10.1.tar.gz' && exit ;; esac ; fi ; if test "" = "y" ; then exit 1 ; fi ; if test -n "https://github.com/Freescale/libimxvpuapi/archive/0.10.1/libimxvpuapi-0.10.1.tar.gz" ; then case "https" in git) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b git -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz  -- https://github.com/Freescale/libimxvpuapi/archive/0.10.1 0.10.1 libimxvpuapi-0.10.1 && exit ;; svn) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b svn -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz  -- https://github.com/Freescale/libimxvpuapi/archive/0.10.1 0.10.1 libimxvpuapi-0.10.1 && exit ;; cvs) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b cvs -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz  -- github.com/Freescale/libimxvpuapi/archive/0.10.1 0.10.1 libimxvpuapi libimxvpuapi-0.10.1 && exit ;; bzr) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b bzr -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz  -- https://github.com/Freescale/libimxvpuapi/archive/0.10.1 0.10.1 libimxvpuapi-0.10.1 && exit ;; file) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b cp -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz -H package/libimxvpuapi//libimxvpuapi.hash  -- github.com/Freescale/libimxvpuapi/archive/0.10.1/libimxvpuapi-0.10.1.tar.gz && exit ;; scp) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b scp -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz -H package/libimxvpuapi//libimxvpuapi.hash  -- 'github.com/Freescale/libimxvpuapi/archive/0.10.1/libimxvpuapi-0.10.1.tar.gz' && exit ;; hg) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b hg -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz  -- https://github.com/Freescale/libimxvpuapi/archive/0.10.1 0.10.1 libimxvpuapi-0.10.1 && exit ;; *) 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b wget -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz -H package/libimxvpuapi//libimxvpuapi.hash  -- 'https://github.com/Freescale/libimxvpuapi/archive/0.10.1/libimxvpuapi-0.10.1.tar.gz' && exit ;; esac ; fi ; if test -n "http://sources.buildroot.net" ; then 	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" BR2_DL_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl" BUILD_DIR=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build BR2_EXTERNAL=support/dummy-external support/download/dl-wrapper -b wget -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz -H package/libimxvpuapi//libimxvpuapi.hash  -- 'http://sources.buildroot.net/libimxvpuapi-0.10.1.tar.gz' && exit ; fi ; exit 1
libimxvpuapi-0.10.1.tar.gz: OK (sha256: 8d7aeed88c06fda44318cef9565ae47b86461bd309908b1103a7974ed0822a8d)
mkdir -p /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1
touch /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/.stamp_downloaded
>>> libimxvpuapi 0.10.1 Extracting
mkdir -p /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1
gzip -d -c /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/dl/libimxvpuapi-0.10.1.tar.gz | tar --strip-components=1 -C /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1   -xf -
chmod -R +rw /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1
touch /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/.stamp_extracted
>>> libimxvpuapi 0.10.1 Patching
( \
for D in package/libimxvpuapi/ ; do \
  if test -d ${D}; then \
    if test -d ${D}/0.10.1; then \
      support/scripts/apply-patches.sh  /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1 ${D}/0.10.1 \*.patch \*.patch.arm || exit 1; \
    else \
      support/scripts/apply-patches.sh  /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1 ${D} \*.patch \*.patch.arm || exit 1; \
    fi; \
  fi; \
done; \
)
touch /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/.stamp_patched
>>> libimxvpuapi 0.10.1 Configuring
cd /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1; PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" AR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-ar" AS="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-as" LD="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-ld" NM="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-nm" CC="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-gcc" GCC="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-gcc" CPP="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-cpp" CXX="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-g++" FC="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-gfortran" RANLIB="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-ranlib" READELF="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-readelf" STRIP="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-strip" OBJCOPY="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-objcopy" OBJDUMP="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-objdump" AR_FOR_BUILD="/usr/bin/ar" AS_FOR_BUILD="/usr/bin/as" CC_FOR_BUILD="/usr/bin/gcc" GCC_FOR_BUILD="/usr/bin/gcc" CXX_FOR_BUILD="/usr/bin/g++" LD_FOR_BUILD="/usr/bin/ld" CPPFLAGS_FOR_BUILD="-I/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/include" CFLAGS_FOR_BUILD="-O2 -I/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/include" CXXFLAGS_FOR_BUILD="-O2 -I/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/include" LDFLAGS_FOR_BUILD="-L/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/lib -L/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/lib -Wl,-rpath,/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/lib" FCFLAGS_FOR_BUILD="" DEFAULT_ASSEMBLER="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-as" DEFAULT_LINKER="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-ld" CPPFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" CFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os " CXXFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os " LDFLAGS="" FCFLAGS="" PKG_CONFIG="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/pkg-config" STAGING_DIR="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot" INTLTOOL_PERL=/usr/bin/perl /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/python2 ./waf configure --prefix=/usr
Setting top to                           : /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1 
Setting out to                           : /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/build 
Checking for 'gcc' (C compiler)          : /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-gcc 
Testing compiler flags -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os 
Checking if building with these flags works : yes 
Checking for compiler switch -O2            : yes 
Checking for compiler switch -DPIC          : yes 
Checking for compiler switch -fPIC          : yes 
Checking for compiler switch -pedantic      : yes 
Checking for compiler switch -std=c99       : yes 
Checking for compiler switch -Wall          : yes 
Checking for compiler switch -Wextra        : yes 
using the vpulib backend 
Checking for library vpu                    : yes 
checking if ENC_ENABLE_SOF_STUFF exists     : yes 
'configure' finished successfully (1.536s)
touch /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/.stamp_configured
>>> libimxvpuapi 0.10.1 Building
cd /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1; /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/python2 ./waf build -j 13
Waf: Entering directory `/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/build'
[ 1/17] Compiling imxvpuapi/imxvpuapi.c
[ 2/17] Compiling imxvpuapi/imxvpuapi_jpeg.c
[ 3/17] Compiling imxvpuapi/imxvpuapi_parse_jpeg.c
[ 4/17] Compiling imxvpuapi/imxvpuapi_vpulib.c
[ 5/17] Compiling example/main.c
[ 6/17] Compiling example/h264_utils.c
[ 7/17] Compiling libimxvpuapi.pc.in
[ 8/17] Compiling example/decode-example.c
[ 9/17] Compiling example/encode-example.c
[10/17] Compiling example/jpeg-dec-example.c
[11/17] Compiling example/jpeg-enc-example.c
[12/17] Linking build/libimxvpuapi.so
[13/17] Linking build/example/decode-example
[15/17] Linking build/example/encode-example
[15/17] Linking build/example/jpeg-dec-example
[16/17] Linking build/example/jpeg-enc-example
[17/17] Symlinking build/libimxvpuapi.so
Waf: Leaving directory `/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/build'
'build' finished successfully (0.860s)
touch /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/.stamp_built
>>> libimxvpuapi 0.10.1 Installing to staging directory
cd /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1; /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/python2 ./waf --destdir=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot install
Waf: Entering directory `/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/build'
- install /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/include/imxvpuapi/imxvpuapi.h (from imxvpuapi/imxvpuapi.h)
- install /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/include/imxvpuapi/imxvpuapi_jpeg.h (from imxvpuapi/imxvpuapi_jpeg.h)
+ install /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib64/libimxvpuapi.so.0.10.1 (from build/libimxvpuapi.so)
- symlink /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib64/libimxvpuapi.so (to libimxvpuapi.so.0.10.1)
- symlink /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib64/libimxvpuapi.so.0 (to libimxvpuapi.so.0.10.1)
+ install /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib64/pkgconfig/libimxvpuapi.pc (from build/libimxvpuapi.pc)
Waf: Leaving directory `/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/build'
'install' finished successfully (0.023s)
if test -n "" ; then \
	echo ">>> libimxvpuapi 0.10.1 Fixing package configuration files" ;\
		/usr/bin/sed -i -e  "s,/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001,@BASE_DIR@,g" \
			-e "s,/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot,@STAGING_DIR@,g" \
			-e "s,^\(exec_\)\?prefix=.*,\1prefix=@STAGING_DIR@/usr,g" \
			-e "s,-I/usr/,-I@STAGING_DIR@/usr/,g" \
			-e "s,-L/usr/,-L@STAGING_DIR@/usr/,g" \
			-e "s,@STAGING_DIR@,/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot,g" \
			-e "s,@BASE_DIR@,/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001,g" \
			 ;\
fi
>>> libimxvpuapi 0.10.1 Fixing libtool files
find /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib* -name "*.la" | xargs --no-run-if-empty \
	/usr/bin/sed -i -e "s:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001:@BASE_DIR@:g" \
		-e "s:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot:@STAGING_DIR@:g" \
		 \
		-e "s:\(['= ]\)/usr:\\1@STAGING_DIR@/usr:g" \
		 \
		-e "s:@STAGING_DIR@:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/arm-buildroot-linux-gnueabi/sysroot:g" \
		-e "s:@BASE_DIR@:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001:g"
touch /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/.stamp_staging_installed
>>> libimxvpuapi 0.10.1 Installing to target
cd /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1; /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/python2 ./waf --destdir=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target install
Waf: Entering directory `/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/build'
+ install /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/include/imxvpuapi/imxvpuapi.h (from imxvpuapi/imxvpuapi.h)
- symlink /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/lib64/libimxvpuapi.so (to libimxvpuapi.so.0.10.1)
- symlink /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/lib64/libimxvpuapi.so.0 (to libimxvpuapi.so.0.10.1)
+ install /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/include/imxvpuapi/imxvpuapi_jpeg.h (from imxvpuapi/imxvpuapi_jpeg.h)
+ install /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/lib64/libimxvpuapi.so.0.10.1 (from build/libimxvpuapi.so)
+ install /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/lib64/pkgconfig/libimxvpuapi.pc (from build/libimxvpuapi.pc)
Waf: Leaving directory `/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/build'
'install' finished successfully (0.025s)
if test -n "" ; then \
	rm -f -f  ; \
fi
touch /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/libimxvpuapi-0.10.1/.stamp_target_installed
>>>   Finalizing target directory
if [ ! -f "/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/nsswitch.conf" ]; then /usr/bin/install -D -m 0644 package/glibc/nsswitch.conf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/nsswitch.conf ; fi
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/lib/luarocks
mkdir -p /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc
echo "buildroot" > /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/hostname
/usr/bin/sed -i -e '$a \127.0.1.1\tbuildroot' -e '/^127.0.1.1/d' /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/hosts
mkdir -p /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc
echo "Welcome to Buildroot" > /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/issue
mkdir -p /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/network/
( echo "# interface file auto-generated by buildroot"; echo ; echo "auto lo"; echo "iface lo inet loopback"; ) > /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/network/interfaces
/usr/bin/sed -i -e s,^root:[^:]*:,root::, /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/shadow
ln -sf busybox /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/bin/sh
/usr/bin/sed -i -e '/# GENERIC_SERIAL$/s~^.*#~ttymxc1::respawn:/sbin/getty -L  ttymxc1 0 vt100 #~' /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/inittab
/usr/bin/sed -i -e '/^#.*-o remount,rw \/$/s~^#\+~~' /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/inittab
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/include /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/aclocal \
	/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/lib/pkgconfig /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/pkgconfig \
	/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/lib/cmake /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/cmake
find /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/{lib,share}/ -name '*.cmake' -print0 | xargs -0 rm -f
find /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/lib /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/lib /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/libexec \
	\( -name '*.a' -o -name '*.la' \) -print0 | xargs -0 rm -f
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/gdb
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/bash-completion
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/zsh
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/man /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/man
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/info /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/info
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/doc /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/doc
rm -rf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share/gtk-doc
rmdir /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/usr/share 2>/dev/null
Makefile:604: recipe for target 'target-finalize' failed
make[1]: [target-finalize] Error 1 (ignored)
find /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target -type f \( -perm /111 -o -name '*.so*' \) -not \( -name 'libpthread*.so*' -o -name 'ld-*.so*' -o -name '*.ko' \) -print0 | xargs -0 /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-strip --remove-section=.comment --remove-section=.note 2>/dev/null || true
if test -d /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/lib/modules; then \
	find /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/lib/modules -type f -name '*.ko' -print0 | \
	xargs -0 -r /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-strip --remove-section=.comment --remove-section=.note --strip-unneeded; fi
find /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/lib -type f -name 'libpthread*.so*' | \
	xargs -r /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-strip --remove-section=.comment --remove-section=.note --strip-debug
find /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/lib -type f -name 'ld-*.so*' | \
	xargs -r /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/arm-buildroot-linux-gnueabi-strip --remove-section=.comment --remove-section=.note --strip-debug
test -f /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/ld.so.conf && \
	{ echo "ERROR: we shouldn't have a /etc/ld.so.conf file"; exit 1; } || true
test -d /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/ld.so.conf.d && \
	{ echo "ERROR: we shouldn't have a /etc/ld.so.conf.d directory"; exit 1; } || true
mkdir -p /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc
( \
	echo "NAME=Buildroot"; \
	echo "VERSION=2016.02-rc1-g0c52369-dirty"; \
	echo "ID=buildroot"; \
	echo "VERSION_ID=2016.02-rc1"; \
	echo "PRETTY_NAME=\"Buildroot 2016.02-rc1\"" \
) >  /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/etc/os-release
>>>   Executing post-build script board/boundarydevices/nitrogen6x/post-build.sh
Image Name:   boot script
Created:      Wed Feb 17 10:29:56 2016
Image Type:   ARM Linux Script (uncompressed)
Data Size:    2920 Bytes = 2.85 kB = 0.00 MB
Load Address: 00000000
Entry Point:  00000000
Contents:
   Image 0: 2912 Bytes = 2.84 kB = 0.00 MB
Image Name:   upgrade script
Created:      Wed Feb 17 10:29:56 2016
Image Type:   ARM Linux Script (uncompressed)
Data Size:    1495 Bytes = 1.46 kB = 0.00 MB
Load Address: 00000000
Entry Point:  00000000
Contents:
   Image 0: 1487 Bytes = 1.45 kB = 0.00 MB
>>>   Generating root filesystem image rootfs.ext2
rm -f /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
rm -f /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
rm -f /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_users_table.txt
echo "set -e" >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
echo "chown -h -R 0:0 /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target" >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
printf '	- - input -1 * - - - Input device group\n' >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_users_table.txt
PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/support/scripts/mkusers /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_users_table.txt /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
cat system/device_table.txt > /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_device_table.txt
printf '	/bin/busybox                     f 4755 0  0 - - - - -\n /dev/console c 622 0 0 5 1 - - -\n' >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_device_table.txt
echo "/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/makedevs -d /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_device_table.txt /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target" >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
echo "	PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" mke2img -d /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target -G 4 -R 1 -B 0 -I 0 -o /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/images/rootfs.ext2" >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
chmod a+x /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/fakeroot -- /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
rootdir=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target
table='/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_device_table.txt'
tune2fs 1.42.13 (17-May-2015)
tune2fs 1.42.13 (17-May-2015)

Please run e2fsck on the filesystem.

Creating journal inode: done
This filesystem will be automatically checked every 20 mounts or
0 days, whichever comes first.  Use tune2fs -c or -i to override.

mke2img: e2fsck was successfully run on '/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/images/rootfs.ext2' (ext4)

tune2fs 1.42.13 (17-May-2015)
Setting maximal mount count to -1
Setting interval between checks to 0 seconds
/usr/bin/install -m 0644 support/misc/target-dir-warning.txt /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
ln -sf rootfs.ext2 /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/images/rootfs.ext4
>>>   Generating root filesystem image rootfs.tar
rm -f /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
rm -f /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
rm -f /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_users_table.txt
echo "set -e" >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
echo "chown -h -R 0:0 /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target" >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
printf '	- - input -1 * - - - Input device group\n' >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_users_table.txt
PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/buildroot-2016.02-rc1/support/scripts/mkusers /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_users_table.txt /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
cat system/device_table.txt > /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_device_table.txt
printf '	/bin/busybox                     f 4755 0  0 - - - - -\n /dev/console c 622 0 0 5 1 - - -\n' >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_device_table.txt
echo "/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/makedevs -d /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_device_table.txt /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target" >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
echo "	tar -cf /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/images/rootfs.tar --numeric-owner -C /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target ." >> /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
chmod a+x /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
PATH="/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/sbin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin:/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/sbin:/opt/tools/bin:/home/seiderer/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/fakeroot -- /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_fakeroot.fs
rootdir=/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target
table='/home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/build/_device_table.txt'
/usr/bin/install -m 0644 support/misc/target-dir-warning.txt /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/target/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
>>>   Executing post-image script board/boundarydevices/nitrogen6x/post-image.sh
hdimage(sdcard.img): adding partition 'u-boot' from 'u-boot.imx' ...
hdimage(sdcard.img): adding partition 'rootfs' (in MBR) from 'rootfs.ext4' ...
hdimage(sdcard.img): writing MBR
Gary Bisson Feb. 17, 2016, 10:03 a.m. UTC | #5
Hi Peter,

On Wed, Feb 17, 2016 at 10:45 AM, Peter Seiderer <ps.report@gmx.net> wrote:
> <snip>
>> Could you pastebin the full log of libimxvpuapi build, your buildroot
>> configuration as well as you 'env'?
>>
>
> Build log attached (rm -r build/libimxvpuapi-0.10.1; make V=1 2>&1 | tee out_build_libimxvpuapi_orig.txt),
> same buildroot setup as in previous e-mail: out_build_libimxvpuapi_orig.txt
>
> $ cd build/libimxvpuapi-0.10.1/
> $ /home/seiderer/Work/BD_Nitrogen6x/Buildroot-2016-02/build_2016_02_001/host/usr/bin/python2 ./waf configure --help
> ...
>     --libdir=LIBDIR     object code libraries [EXEC_PREFIX/lib64]

Thanks for your quick reply. Indeed the same command on my platform gives me:
    --libdir=LIBDIR     object code libraries [EXEC_PREFIX/lib]

Plus your env seems just fine. Digging into it I've found my the
difference is between our system, multiarch is enabled on mine. In the
Configure.py script the libdir is initialized as follows:
if not env.LIBDIR:
  if Options.options.libdir:
    env.LIBDIR=Utils.sane_path(Options.options.libdir)
  else:
    env.LIBDIR=Utils.subst_vars('${PREFIX}/lib%s'%Utils.lib64(),env)

And Utils.py tells us where the 64 comes from:
def lib64():
  if os.sep=='/':
    if platform.architecture()[0]=='64bit':
      if os.path.exists('/usr/lib64')and not os.path.exists('/usr/lib32'):
        return'64'
  return''

So I'll submit the v3 today and cc you. Thanks for reporting and
fixing the issue!

Regards,
Gary
Peter Seiderer Feb. 17, 2016, 12:30 p.m. UTC | #6
Hello Gary,

> Gesendet: Mittwoch, 17. Februar 2016 um 10:37 Uhr
> Von: "Gary Bisson" <gary.bisson@boundarydevices.com>
> An: "Peter Seiderer" <ps.report@gmx.net>
> Cc: buildroot@busybox.net, "Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>
> Betreff: Re: [Buildroot] [PATCH v2 1/2] libimxvpuapi: add new package
>
> Hi Peter,
> 
> On Wed, Feb 17, 2016 at 10:26 AM, Peter Seiderer <ps.report@gmx.net> wrote:
> >
> > Hello Gary,
> >
> > > Gesendet: Dienstag, 16. Februar 2016 um 23:57 Uhr
> > > Von: "Gary Bisson" <gary.bisson@boundarydevices.com>
> > > An: "Peter Seiderer" <ps.report@gmx.net>
> > > Cc: buildroot@busybox.net, "Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>
> > > Betreff: Re: [Buildroot] [PATCH v2 1/2] libimxvpuapi: add new package
> >
> > [snip]
> >
> > >
> > > > But I had problems using the imxeglvivsink element and
> > > > with qt5 eglfs, suspecting your 'Update most Freescale packages' patch series
> > > > (using buildroot-2016.02-rc1 with your '[PATCH v3 0/2] gst1-imx: bump version to 0.12.0'
> > > > patches on top), but did not find time yet to investigate further...
> > >
> > > Does a basic gstreamer pipeline work?
> > > # gst-launch-1.0 videotestsrc ! imxeglvivsink
> > >
> >
> > No:
> >
> > $ GST_DEBUG=*:3 gst-launch-1.0 videotestsrc ! imxeglvivsink
> > Setting pipeline to PAUSED ...
> > mxc_sdc_fb fb.20: 1920x1080 h_sync,r,l: 44,88,148  v_sync,l,u: 5,4,36 pixclock=148500000 Hz
> > imx-ipuv3 2800000.ipu: try ipu internal clk
> > imx-ipuv3 2800000.ipu: disp=0, pixel_clk=148500000 148500000 parent=148500000 div=1
> > 0:00:00.229253000   245   0x9d1ee0 ERROR      imxeglplatform_fb egl_platform_fb.c:72:gst_imx_egl_viv_sink_egl_platform_create: eglGetDisplay failed: bad alloc
> > ERROR: Pipeline doesn't want to pause.
> > Setting pipeline to NULL ...
> > Freeing pipeline ...
> > mxc_sdc_fb fb.20: 1920x1080 h_sync,r,l: 44,88,148  v_sync,l,u: 5,4,36 pixclock=148500000 Hz
> > imx-ipuv3 2800000.ipu: try ipu internal clk
> > imx-ipuv3 2800000.ipu: disp=0, pixel_clk=148500000 148500000 parent=148500000 div=1
> >
> > Using Buildroot-2016-02-rc1 with
> > https://patchwork.ozlabs.org/patch/577011/mbox/
> > https://patchwork.ozlabs.org/patch/577012/mbox/
> 
> The setup I tried yesterday was:
> - Buildroot master commit f3fac0dcfdf (post 2016.02-rc1).
> - Plus the two patches you mention above
> 
> > and 'qt5tools: new package' patches on top with the following defconfig (based on
> > the original nitrogen6x_defconfig config):
> >
> > BR2_arm=y
> > BR2_cortex_a9=y
> > BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_14=y
> > BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
> > BR2_GLIBC_VERSION_2_22=y
> > BR2_BINUTILS_VERSION_2_25_X=y
> > BR2_TOOLCHAIN_BUILDROOT_CXX=y
> > BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
> > BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
> > BR2_ROOTFS_POST_BUILD_SCRIPT="board/boundarydevices/nitrogen6x/post-build.sh"
> > BR2_ROOTFS_POST_IMAGE_SCRIPT="board/boundarydevices/nitrogen6x/post-image.sh"
> > BR2_LINUX_KERNEL=y
> > BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
> > BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/tarball/f4c8395/linux-imx6-f4c8395.tar.gz"
> > BR2_LINUX_KERNEL_DEFCONFIG="boundary"
> > BR2_LINUX_KERNEL_ZIMAGE=y
> > BR2_LINUX_KERNEL_DTS_SUPPORT=y
> > BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6dl-nit6xlite imx6dl-nitrogen6_vm imx6dl-nitrogen6x imx6q-nitrogen6x imx6q-nitrogen6_max imx6q-sabrelite"
> > BR2_LINUX_KERNEL_INSTALL_TARGET=y
> > BR2_PACKAGE_GSTREAMER1=y
> > BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP=y
> > BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOTESTSRC=y
> > BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOTESTSRC=y
> > BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA=y
> > BR2_PACKAGE_GST1_PLUGINS_GOOD=y
> > BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2=y
> > BR2_PACKAGE_GST1_PLUGINS_BAD=y
> > BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOPARSERS=y
> > BR2_PACKAGE_GST1_PLUGINS_UGLY=y
> > BR2_PACKAGE_GST1_IMX=y
> > BR2_PACKAGE_BINUTILS=y
> > BR2_PACKAGE_DEJAVU=y
> > BR2_PACKAGE_QT5=y
> > BR2_PACKAGE_QT5BASE_LICENSE_APPROVED=y
> > BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM=y
> > BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
> > BR2_PACKAGE_QT5BASE_LINUXFB=y
> > BR2_PACKAGE_QT5BASE_EGLFS=y
> > BR2_PACKAGE_QT5BASE_DEFAULT_QPA="eglfs"
> > BR2_PACKAGE_QT5BASE_FONTCONFIG=y
> > BR2_PACKAGE_QT5BASE_GIF=y
> > BR2_PACKAGE_QT5BASE_JPEG=y
> > BR2_PACKAGE_QT5BASE_PNG=y
> > BR2_PACKAGE_QT5GRAPHICALEFFECTS=y
> > BR2_PACKAGE_QT5MULTIMEDIA=y
> > BR2_PACKAGE_QT5QUICKCONTROLS=y
> > BR2_PACKAGE_QT5SERIALPORT=y
> > BR2_PACKAGE_QT5TOOLS=y
> > BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS=y
> > BR2_PACKAGE_QT5WEBSOCKETS=y
> > BR2_PACKAGE_QT5SCRIPT=y
> > BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
> > BR2_PACKAGE_IMX_LIB=y
> > BR2_PACKAGE_IMX_GPU_VIV=y
> > BR2_PACKAGE_OPENSSL=y
> > BR2_PACKAGE_LIBV4L=y
> > BR2_PACKAGE_LIBV4L_UTILS=y
> > BR2_PACKAGE_LIBIMXVPUAPI=y
> > BR2_TARGET_ROOTFS_EXT2=y
> > BR2_TARGET_ROOTFS_EXT2_4=y
> > BR2_TARGET_UBOOT=y
> > BR2_TARGET_UBOOT_BOARDNAME="nitrogen6q"
> > BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
> > BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="http://github.com/boundarydevices/u-boot-imx6/tarball/a4070a8/u-boot-a4070a8.tar.gz"
> > BR2_TARGET_UBOOT_FORMAT_IMX=y
> > BR2_PACKAGE_HOST_GENIMAGE=y
> > BR2_PACKAGE_HOST_UBOOT_TOOLS=y
> >
> > > If not there's no wonder qt5 doesn't like it. I haven't tried qt5 but
> > > I'm sure the gstreamer imxeglvivsink does work.
> > >
> >
> > My last working version was based on buildroot-2015.11.1 plus 'qt5: bump version to 5.5.1' and
> > 'qt5tools: new package' on top...
> >
> > > In case you've enabled BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV, you
> > > might need to load the Galcore module manually in case you don't have
> > > eudev for instance:
> > > # insmod /lib/modules/3.14.28/extra/galcore.ko
> >
> > No, working with boundarydevices linux-imx6-f4c8395 and original boundary config
> > and there is a '/dev/galcore' entry on the target...
> 
> Yes but that is the problem. Please try again with
> BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV.
> 
> As you know, 3D graphics libraries match a specific kernel driver.
> Since it was an issue for many people, Vivante started to provide a
> kernel module so you can easily have the latest driver on an older
> kernel.
> 
> Since I've updated the graphics to the latest (5.0.11 p7.1), the
> driver inside the 3.14.28 kernel is outdated so you need to use the
> Vivante kernel module. I didn't for the selection of the kernel module
> when the libraries are selected since some kernels (3.14.52) have the
> correct driver built-in.
> 

Got it now, the missing part was:

 BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV=y

Qt5 eglfs and gstreamer imxeglvivsink are working now...

> Sorry for the confusion but know that if you want to make sure the
> driver matches the user-space blobs, always select the Vivante kernel
> module as I'll make to always update both at the same time.
> 

Maybe a little hint in board/boundarydevices/nitrogen6x/readme.txt would be useful?

Many thanks for your support...

Regards,
Peter

> Regards,
> Gary
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
>
Gary Bisson Feb. 17, 2016, 12:42 p.m. UTC | #7
Hi Peter,

On Wed, Feb 17, 2016 at 1:30 PM, Peter Seiderer <ps.report@gmx.net> wrote:
> Hello Gary,
>
>> <snip>
>> > No, working with boundarydevices linux-imx6-f4c8395 and original boundary config
>> > and there is a '/dev/galcore' entry on the target...
>>
>> Yes but that is the problem. Please try again with
>> BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV.
>>
>> As you know, 3D graphics libraries match a specific kernel driver.
>> Since it was an issue for many people, Vivante started to provide a
>> kernel module so you can easily have the latest driver on an older
>> kernel.
>>
>> Since I've updated the graphics to the latest (5.0.11 p7.1), the
>> driver inside the 3.14.28 kernel is outdated so you need to use the
>> Vivante kernel module. I didn't for the selection of the kernel module
>> when the libraries are selected since some kernels (3.14.52) have the
>> correct driver built-in.
>>
>
> Got it now, the missing part was:
>
>  BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV=y
>
> Qt5 eglfs and gstreamer imxeglvivsink are working now...

Good to hear!

>> Sorry for the confusion but know that if you want to make sure the
>> driver matches the user-space blobs, always select the Vivante kernel
>> module as I'll make to always update both at the same time.
>>
>
> Maybe a little hint in board/boundarydevices/nitrogen6x/readme.txt would be useful?

Well it is not Nitrogen6x-specific, it applies to all i.MX6 platforms
so I'm not sure where would be the best place to give this info apart
from the help text. Thomas, any idea on this?

Yocto is forcing the use of the Vivante kernel module, maybe we should
do the same but I'm not fond of this approach.

> Many thanks for your support...

No problem. Thanks for your valuable feedback!

Regards,
Gary
Thomas Petazzoni Feb. 17, 2016, 12:50 p.m. UTC | #8
Hello,

On Wed, 17 Feb 2016 13:42:44 +0100, Gary Bisson wrote:

> Well it is not Nitrogen6x-specific, it applies to all i.MX6 platforms
> so I'm not sure where would be the best place to give this info apart
> from the help text. Thomas, any idea on this?

I am not sure where to store such platform-specific information. A new
section in the Buildroot manual, perhaps?

Thomas
Arnout Vandecappelle Feb. 17, 2016, 11:48 p.m. UTC | #9
On 17-02-16 13:42, Gary Bisson wrote:
> Hi Peter,
> 
> On Wed, Feb 17, 2016 at 1:30 PM, Peter Seiderer <ps.report@gmx.net> wrote:
>> Hello Gary,
>>
>>> <snip>
>>>> No, working with boundarydevices linux-imx6-f4c8395 and original boundary config
>>>> and there is a '/dev/galcore' entry on the target...
>>>
>>> Yes but that is the problem. Please try again with
>>> BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV.
>>>
>>> As you know, 3D graphics libraries match a specific kernel driver.
>>> Since it was an issue for many people, Vivante started to provide a
>>> kernel module so you can easily have the latest driver on an older
>>> kernel.
>>>
>>> Since I've updated the graphics to the latest (5.0.11 p7.1), the
>>> driver inside the 3.14.28 kernel is outdated so you need to use the
>>> Vivante kernel module. I didn't for the selection of the kernel module
>>> when the libraries are selected since some kernels (3.14.52) have the
>>> correct driver built-in.
>>>
>>
>> Got it now, the missing part was:
>>
>>  BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV=y
>>
>> Qt5 eglfs and gstreamer imxeglvivsink are working now...
> 
> Good to hear!
> 
>>> Sorry for the confusion but know that if you want to make sure the
>>> driver matches the user-space blobs, always select the Vivante kernel
>>> module as I'll make to always update both at the same time.
>>>
>>
>> Maybe a little hint in board/boundarydevices/nitrogen6x/readme.txt would be useful?
> 
> Well it is not Nitrogen6x-specific, it applies to all i.MX6 platforms
> so I'm not sure where would be the best place to give this info apart
> from the help text. Thomas, any idea on this?
> 
> Yocto is forcing the use of the Vivante kernel module, maybe we should
> do the same but I'm not fond of this approach.

 We can't force select because BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV depends on
the kernel to be built. But we could do

	select BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV if BR2_LINUX_KERNEL

 I don't think this would be such a bad idea. Added size isn't really a big
deal. Of course, the user still has to load the module...

 Regards,
 Arnout

> 
>> Many thanks for your support...
> 
> No problem. Thanks for your valuable feedback!
> 
> Regards,
> Gary
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
>
diff mbox

Patch

--- a/package/libimxvpuapi/libimxvpuapi.mk
+++ b/package/libimxvpuapi/libimxvpuapi.mk
@@ -14,7 +14,7 @@  LIBIMXVPUAPI_INSTALL_STAGING = YES
 define LIBIMXVPUAPI_CONFIGURE_CMDS
        cd $(@D); \
        $(TARGET_CONFIGURE_OPTS) $(HOST_DIR)/usr/bin/python2 ./waf configure \
-               --prefix=/usr
+               --prefix=/usr --libdir=/usr/lib
 endef
 
 define LIBIMXVPUAPI_BUILD_CMDS