Hello.
I am using L4T r 32.2.3 version on tx2 board. I am trying to build the same version of the gst-omx plugin, but there is a problem.
I built gst-omx following the procedure below.
-
Download L4T sources r32.2.3 from nvidia developer download center.
-
Build the gst-egl plugin first.
-
Build according to the process in the README of gst-omx.
If you run make after ./autogen.sh → ./configure --with-omx-target=tegra, the following problem occurs.
nvidia@nvidia-desktop:~/gstreamer/gstomx1_src_32.2.3/gst-omx1$ make
(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/missing autoheader)
rm -f stamp-h1
touch config.h.in
cd . && /bin/bash ./config.status config.h
config.status: creating config.h
config.status: config.h is unchanged
make all-recursive
make[1]: Entering directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1'
Making all in common
make[2]: Entering directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/common'
Making all in m4
make[3]: Entering directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/common/m4'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/common/m4'
make[3]: Entering directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/common'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/common'
make[2]: Leaving directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/common'
Making all in omx
make[2]: Entering directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/omx'
CC libgstomx_la-gstomxvideosink.lo
gstomxvideosink.c:30:10: fatal error: nvbufsurface.h: No such file or directory
#include "nvbufsurface.h"
^~~~~~~~~~~~~~~~
compilation terminated.
Makefile:844: recipe for target 'libgstomx_la-gstomxvideosink.lo' failed
make[2]: *** [libgstomx_la-gstomxvideosink.lo] Error 1
make[2]: Leaving directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1/omx'
Makefile:526: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/nvidia/gstreamer/gstomx1_src_32.2.3/gst-omx1'
Makefile:458: recipe for target 'all' failed
make: *** [all] Error 2
gstv4l2videosink.c includes nvbufsurface.h, but the file is not included in the gst-omx1 source.
Likewise, nvbuf_utils.h is also required, but not included in the source.
- Are nvbufsurface.h and nvbuf_utils.h missing in gst-omx1?
- If it is not missing, is there any way to solve it?
For reference, the same problem occurs when using r32.3.1 version of L4T sources.