Plugin writer's guide build fail on ubuntu 18.04

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Plugin writer's guide build fail on ubuntu 18.04

GStreamer-devel mailing list
Hi,
I have develop gstreamer application for about half year, I now try to write
custom element because application code couldn't do my task, to separate
side-by-side video, eg: a combined 2 sensor video data from MIPI CSI2, both
have the same resolution/fps.

According to plugin writer's guide,

https://gstreamer.freedesktop.org/documentation/plugin-development/basics/boiler.html?gi-language=c
My command is:

git clone https://gitlab.freedesktop.org/gstreamer/gst-template.git
cd gst-template
meson builddir
ninja -C builddir

On ubuntu 18.04, its built-in gsteramer version is 1.14.5, but the
meson.build request 1.19.
I tried to modify meson.build version check, and then ninja is failed.

ninja -C builddir
ninja: Entering directory `builddir'
[2/7] Compiling C object 'gst-plugin/gstplugin@sha/src_gstplugin.c.o'.
FAILED: gst-plugin/gstplugin@sha/src_gstplugin.c.o
cc  -Igst-plugin/gstplugin@sha -Igst-plugin -I../gst-plugin
-I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include -fdiagnostics-color=always
-pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O0 -g -fPIC -pthread
-DHAVE_CONFIG_H -MD -MQ 'gst-plugin/gstplugin@sha/src_gstplugin.c.o' -MF
'gst-plugin/gstplugin@sha/src_gstplugin.c.o.d' -o
'gst-plugin/gstplugin@sha/src_gstplugin.c.o' -c
../gst-plugin/src/gstplugin.c
../gst-plugin/src/gstplugin.c:102:45: error: expected ‘)’ before string
constant
 GST_ELEMENT_REGISTER_DEFINE (myfirstplugin, "myfirstplugin", GST_RANK_NONE,
                                             ^~~~~~~~~~~~~~~
../gst-plugin/src/gstplugin.c: In function ‘plugin_init’:
../gst-plugin/src/gstplugin.c:266:10: warning: implicit declaration of
function ‘GST_ELEMENT_REGISTER’; did you mean ‘GST_ELEMENT_CAST’?
[-Wimplicit-function-declaration]
   return GST_ELEMENT_REGISTER (myfirstplugin, plugin);

I further check the gstreamer version of Ubuntu 20.04, is 1.16.x.

So if I want to process the guide, do I need to build the latest gstreamer
myself?
Thanks a lot.



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Plugin writer's guide build fail on ubuntu 18.04

GStreamer-devel mailing list
The build is failing because these APIs only exist on newer versions of GStreamer. GST_ELEMENT_REGISTER, for example, was added on 1.20. You have GStreamer 1.14 on your system. Unfortunately, gst-template is only available starting from 1.18, it seems.

There’s another tool in plugins bad you may use for older version of GStreamer. Here are some instructions:


Michael
www.ridgerun.com

On 24 Apr 2021, at 02:25, ChrisLiuv via gstreamer-devel <[hidden email]> wrote:

Hi,
I have develop gstreamer application for about half year, I now try to write
custom element because application code couldn't do my task, to separate
side-by-side video, eg: a combined 2 sensor video data from MIPI CSI2, both
have the same resolution/fps.

According to plugin writer's guide,

https://gstreamer.freedesktop.org/documentation/plugin-development/basics/boiler.html?gi-language=c
My command is:

git clone https://gitlab.freedesktop.org/gstreamer/gst-template.git
cd gst-template
meson builddir
ninja -C builddir

On ubuntu 18.04, its built-in gsteramer version is 1.14.5, but the
meson.build request 1.19.
I tried to modify meson.build version check, and then ninja is failed.

ninja -C builddir
ninja: Entering directory `builddir'
[2/7] Compiling C object 'gst-plugin/gstplugin@sha/src_gstplugin.c.o'.
FAILED: gst-plugin/gstplugin@sha/src_gstplugin.c.o
cc  -Igst-plugin/gstplugin@sha -Igst-plugin -I../gst-plugin
-I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include -fdiagnostics-color=always
-pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O0 -g -fPIC -pthread
-DHAVE_CONFIG_H -MD -MQ 'gst-plugin/gstplugin@sha/src_gstplugin.c.o' -MF
'gst-plugin/gstplugin@sha/src_gstplugin.c.o.d' -o
'gst-plugin/gstplugin@sha/src_gstplugin.c.o' -c
../gst-plugin/src/gstplugin.c
../gst-plugin/src/gstplugin.c:102:45: error: expected ‘)’ before string
constant
GST_ELEMENT_REGISTER_DEFINE (myfirstplugin, "myfirstplugin", GST_RANK_NONE,
                                            ^~~~~~~~~~~~~~~
../gst-plugin/src/gstplugin.c: In function ‘plugin_init’:
../gst-plugin/src/gstplugin.c:266:10: warning: implicit declaration of
function ‘GST_ELEMENT_REGISTER’; did you mean ‘GST_ELEMENT_CAST’?
[-Wimplicit-function-declaration]
  return GST_ELEMENT_REGISTER (myfirstplugin, plugin);

I further check the gstreamer version of Ubuntu 20.04, is 1.16.x.

So if I want to process the guide, do I need to build the latest gstreamer
myself?
Thanks a lot.



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Plugin writer's guide build fail on ubuntu 18.04

GStreamer-devel mailing list
In reply to this post by GStreamer-devel mailing list
Hi,

Indeed the API to declare an element has changed since 1.19.
The API GST_ELEMENT_REGISTER_DEFINE has been introduced.

I'll recommend you either to checkout the 1.18 branch of gst-template or use
gst-build to build and use GStreamer.

Here is a documentation on how to get start with gst-build:

https://www.collabora.com/news-and-blog/blog/2020/03/19/getting-started-with-gstreamer-gst-build/

You can even enter a shell to make good use of the last GStreamer
improvements.

Best regards.

Stéphane.




--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel