Hi,
I am trying to build imx-gst1.0-plugin by executing this command:
bitbake imx-gst1.0-plugin
When I do that I get the following error:
ERROR: imx-gst1.0-plugin-4.1.6-r0 do_fetch: Fetcher failure for URL: 'git://source.codeaurora.org/external/imx/gst1.0-plugins-fsl.git;protocol=https;branch=nxp/MM_04.02.01_1705_L4.9.11_CONSOLIDATED_GA'. Please set a valid SRCREV for url ['SRCREV_default_pn-imx-gst1.0-plugin', 'SRCREV_default', 'SRCREV_pn-imx-gst1.0-plugin', 'SRCREV'] (possible key names are git://source.codeaurora.org/external/imx/gst1.0-plugins-fsl.git;protocol=https;branch=nxp/MM_04.02.01_1705_L4.9.11_CONSOLIDATED_GA, or use a ;rev=X URL parameter)
ERROR: imx-gst1.0-plugin-4.1.6-r0 do_fetch: Function failed: base_do_fetch
ERROR: Logfile of failure stored in: /home/user/Documents/fsl-community-bsp/build/tmp/work/imx6qdlsabresd-fslc-linux-gnueabi/imx-gst1.0-plugin/4.1.6-r0/temp/log.do_fetch.32598
ERROR: Task (/home/user/Documents/fsl-community-bsp/sources/meta-freescale/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.1.6.bb:do_fetch) failed with exit code '1'
When I took a look at the imx-gst1.0-plugin_4.1.6.bb file, I realized that SRCREV was not defined. So, I got the revision number of the latest commit of the branch nxp/MM_04.02.01_1705_L4.9.11_CONSOLIDATED_GA and passed it to SRCREV in imx-gst1.0-plugin_4.1.6.bb.
SRCREV = "ff75824b4444114de57ed61e885b14e6f003c3ab"
However after I resolved this issue by using the trick above, I got a compile error:
| In file included from ../../git/libs/device-2d/imx_2d_device_allocator.c:20:0:
| ../../git/libs/device-2d/imx_2d_device_allocator.h:24:10: fatal error: gst/allocators/gstallocatorphymem.h: No such file or directory
| #include <gst/allocators/gstallocatorphymem.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| compilation terminated.
| make[1]: *** [libgstfsl_1.0_la-imx_2d_device_allocator.lo] Error 1
| make[1]: *** Waiting for unfinished jobs....
| In file included from ../../git/libs/device-2d/imx_2d_device.h:25:0,
| from ../../git/libs/device-2d/imx_2d_device.c:20:
| ../../git/libs/device-2d/imx_2d_device_allocator.h:24:10: fatal error: gst/allocators/gstallocatorphymem.h: No such file or directory
| #include <gst/allocators/gstallocatorphymem.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| compilation terminated.
| make[1]: *** [libgstfsl_1.0_la-imx_2d_device.lo] Error 1
| make[1]: Leaving directory `/home/otokar/avalue_toolchain_rocko/tmp/work/imx6qrevsa01-fslc-linux-gnueabi/imx-gst1.0-plugin/4.1.6-r0/build/libs'
| make: *** [all-recursive] Error 1
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/otokar/avalue_toolchain_rocko/tmp/work/imx6qrevsa01-fslc-linux-gnueabi/imx-gst1.0-plugin/4.1.6-r0/temp/log.do_compile.1922)
ERROR: Task (/home/tilbay/workspace/fw/trunk/yocto/Avalue/4.1.15-1.2.0/sources/meta-freescale/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.1.6.bb:do_compile) failed with exit code '1'
Please tell me how I can solve this problem.
Best Regards.
This problem is resolved in the meta-freescale Yocto layer, http://git.yoctoproject.org/cgit/cgit.cgi/meta-freescale , where the community has provided new recipes which build both the IMX plugins and Freescale's fork of gstreamer together.
It's probably simplest to just add this layer in its entirety. But if you don't want to do this, then looking at those recipes will give you the SRC_URI and SRCREV you need to plug into your own gstreamer recipes to get round this issue. As to versions, the recipes for v4.1.6 seem to be in the Pyro version of this layer, 4.3.4 in the Rocko branch, 4.3.5 in Sumo and 4.4.2 in current master (presumably soon to be Thud).
The missing headers seem to have been moved into the forked version of gstreamer-plugins-base in the custom i.MX fork of gstreamer held at https://source.codeaurora.org/external/imx/gstreamer/. This means the IMX plugin will no longer build against standard gstreamer. This change isn't advertised anywhere unless you trawl the git logs with a suspicious eye.
I haven't yet got past this somewhat user-unfriendly change myself, and am sticking at 4.0.9 of the IMX suite until I get time to re-work ALL the gstreamer related recipes for our vendor toolchain. Hopefully the Community BSP people will be able to sort it at some point, in a rather saner manner than having to patch upstream gstreamer.
Is this not taken as a priority somewhere? This breaks the rocko-build... I have it on 4.3.4. When just putting back the recipe for 4.0.9 and choose that as preferred_version, it compiles fine...
Is there any update regardin this issue particularly ?
... gst/allocators/gstallocatorphymem.h: No such file or directory
The provided patch is not applicable to gstreamer-1.14 in branch "master-next" ...
I currently try imx-gst1.0-plugin-4.3.5 and got the same result!
BR.
Any luck yet?
sorry, still the same issue :-( ...
tphymemmeta.c -o libgstfsl_1.0_la-gstphymemmeta.o >/dev/null 2>&1
| In file included from ../../imx-gst1.0-plugin-4.1.6/libs/device-
2d/imx_2d_device.h:25:0,
| from ../../imx-gst1.0-plugin-4.1.6/libs/device-
2d/imx_2d_device.c:20:
| ../../imx-gst1.0-plugin-4.1.6/libs/device-
2d/imx_2d_device_allocator.h:24:10: fatal error:
gst/allocators/gstallocatorphymem.h: No such file or directory
| #include <gst/allocators/gstallocatorphymem.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| compilation terminated.
| Makefile:620: recipe for target 'libgstfsl_1.0_la-imx_2d_device.lo'
failed
BR.
BAN
Am Freitag, den 20.07.2018, 12:35 +0000 schrieb woutervh:
NXP Community
Re: imx-gst1.0-plugin 4.1.6 fetch and compile problem reply from
Wouter Vanhauwaert in i.MX Processors - View the full discussion
Any luck yet?
Reply to this message by replying to this email, or go to the
message on NXP Community
Start a new discussion in i.MX Processors by email or at NXP
Community
Following Re: imx-gst1.0-plugin 4.1.6 fetch and compile problem in
these streams: Inbox This email was sent by NXP Community because
you are a registered user.
You may unsubscribe instantly from NXP Community, or adjust email
frequency in your email preferences
Hi Team,
Are there any official updates to this issue as we are facing with a stable release?
Kind regards.
Hi all,
is there any update or official statement regarding this topic?
Regards
I was able to pull the following patches to address the compilation error from gstreamer-1.0-plugins-bad version 1.12.2
0014-specific-patches-for-gstplayer-API.patch
0015-gstplayer-Add-gst_player_get_state-API.patch
0016-gstplayer-Add-play-stop-sync-API.patch and
0018-Add-imx-physical-memory-allocator.patch
You can find these patch files @ patch_146809
After patching the gstreamer-1.0-plugins-bad with the above files rebuild the gstreamer-1.0-plugins-bad and then patch the imx-gst1.0-plugin version 4.1.6 with the following patch files and you should be able to build successfully.
diff --git a/tools/gplay/Makefile.am b/tools/gplay/Makefile.am index 7dedf1c..a751f47 100755 --- a/tools/gplay/Makefile.am +++ b/tools/gplay/Makefile.am @@ -5,7 +5,7 @@ libplayengine_@GST_API_VERSION@include_HEADERS = playengine.h libplayengine_@GST_API_VERSION@_la_SOURCES = playengine.c libplayengine_@GST_API_VERSION@_la_CFLAGS = $(GST_CFLAGS) libplayengine_@GST_API_VERSION@_la_LIBADD = $(GST_LIBS) -lz -lgstvideo-$(GST_API_VERSION) -lgstapp-$(GST_API_VERSION) \ - ../../libs/libgstfsl-@GST_API_VERSION@.la + ../../libs/libgstfsl-@GST_API_VERSION@.la -lgstbadallocators-$(GST_API_VERSION) #bin_PROGRAMS = gplay-@GST_API_VERSION@ #gplay_@GST_API_VERSION@_SOURCES = gplay.c playlist.c
diff --git a/tools/gplay2/Makefile.am b/tools/gplay2/Makefile.am index ca9078e..9fd0564 100644 --- a/tools/gplay2/Makefile.am +++ b/tools/gplay2/Makefile.am @@ -3,6 +3,6 @@ bin_PROGRAMS = gplay-@GST_API_VERSION@ gplay_@GST_API_VERSION@_SOURCES = gplay2.c playlist.c gplay_@GST_API_VERSION@_CFLAGS = $(GST_CFLAGS) gplay_@GST_API_VERSION@_LDADD = ../../libs/libgstfsl-@GST_API_VERSION@.la -lgstplayer-$(GST_API_VERSION) $(GST_LIBS) \ - ../../libs/libgstfsl-@GST_API_VERSION@.la + ../../libs/libgstfsl-@GST_API_VERSION@.la -lgstbadallocators-$(GST_API_VERSION) noinst_HEADERS = playlist.h
I am still not able to successfully run a gstreamer pipeline as after the install the imxv4l2src plugin is not installed as part of the yocto rocko build. So let me know if you make any progress.
Hi all,
I got the same errors. The first one I solved on my own, but the second one is a bit more tricky (regarding gst/allocators/gstallocatorphymem.h: No such file or directory).
Please tell us how we can solve this.
Regards!