# gstreamer1 compile error



## nedry (Dec 18, 2021)

Hi on FreeBSD 13 I tried to compile port: multimedia/gstreamer1 unfortunately I got the following error message:

```
===>  Building for gstreamer1-1.16.2
gmake[2]: Entering directory '/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2'
gmake  all-recursive
gmake[3]: Entering directory '/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2'
Making all in pkgconfig
gmake[4]: Entering directory '/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/pkgconfig'
  CP     gstreamer-1.0.pc
  CP     gstreamer-base-1.0.pc
  CP     gstreamer-check-1.0.pc
  CP     gstreamer-controller-1.0.pc
  CP     gstreamer-net-1.0.pc
sed \
        -e "s|[@]gstlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/gst/.libs|" \
        -e "s|[@]checklibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/check/.libs|" \
        -e "s|[@]baselibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/base/.libs|" \
        -e "s|[@]netlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/net/.libs|" \
        -e "s|[@]controllerlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/controller/.libs|" \
        gstreamer-uninstalled.pc > gstreamer-1.0-uninstalled.pc.tmp && mv gstreamer-1.0-uninstalled.pc.tmp gstreamer-1.0-uninstalled.pc
sed \
        -e "s|[@]gstlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/gst/.libs|" \
        -e "s|[@]checklibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/check/.libs|" \
        -e "s|[@]baselibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/base/.libs|" \
        -e "s|[@]netlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/net/.libs|" \
        -e "s|[@]controllerlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/controller/.libs|" \
        gstreamer-base-uninstalled.pc > gstreamer-base-1.0-uninstalled.pc.tmp && mv gstreamer-base-1.0-uninstalled.pc.tmp gstreamer-base-1.0-uninstalled.pc
sed \
        -e "s|[@]gstlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/gst/.libs|" \
        -e "s|[@]checklibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/check/.libs|" \
        -e "s|[@]baselibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/base/.libs|" \
        -e "s|[@]netlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/net/.libs|" \
        -e "s|[@]controllerlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/controller/.libs|" \
        gstreamer-check-uninstalled.pc > gstreamer-check-1.0-uninstalled.pc.tmp && mv gstreamer-check-1.0-uninstalled.pc.tmp gstreamer-check-1.0-uninstalled.pc
sed \
        -e "s|[@]gstlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/gst/.libs|" \
        -e "s|[@]checklibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/check/.libs|" \
        -e "s|[@]baselibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/base/.libs|" \
        -e "s|[@]netlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/net/.libs|" \
        -e "s|[@]controllerlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/controller/.libs|" \
        gstreamer-controller-uninstalled.pc > gstreamer-controller-1.0-uninstalled.pc.tmp && mv gstreamer-controller-1.0-uninstalled.pc.tmp gstreamer-controller-1.0-uninstalled.pc
sed \
        -e "s|[@]gstlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/gst/.libs|" \
        -e "s|[@]checklibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/check/.libs|" \
        -e "s|[@]baselibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/base/.libs|" \
        -e "s|[@]netlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/net/.libs|" \
        -e "s|[@]controllerlibdir[@]|/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/libs/gst/controller/.libs|" \
        gstreamer-net-uninstalled.pc > gstreamer-net-1.0-uninstalled.pc.tmp && mv gstreamer-net-1.0-uninstalled.pc.tmp gstreamer-net-1.0-uninstalled.pc
gmake[4]: Leaving directory '/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/pkgconfig'
Making all in gst
gmake[4]: Entering directory '/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/gst'
/usr/local/bin/glib-mkenums \
--fhead "#ifndef __GST_ENUM_TYPES_H__\n#define __GST_ENUM_TYPES_H__\n\n#include <glib-object.h>\n#include <gst/gstconfig.h>\n\nG_BEGIN_DECLS\n" \
--fprod "\n/* enumerations from \"@filename@\" */\n" \
--vhead "GST_API GType @enum_name@_get_type (void);\n#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n"         \
--ftail "G_END_DECLS\n\n#endif /* __GST_ENUM_TYPES_H__ */" \
gst.h glib-compat.h gstobject.h gstallocator.h gstbin.h gstbuffer.h gstbufferlist.h gstbufferpool.h gstbus.h gstcaps.h gstcapsfeatures.h gstchildproxy.h gstclock.h gstcompat.h gstcontext.h gstcontrolbinding.h gstcontrolsource.h gstdatetime.h gstdebugutils.h gstelement.h gstelementmetadata.h gstdevice.h gstdeviceprovider.h gstdeviceproviderfactory.h gstdynamictypefactory.h gstelementfactory.h gsterror.h gstevent.h gstformat.h gstghostpad.h gstdevicemonitor.h gstinfo.h gstiterator.h gstatomicqueue.h gstmacros.h gstmessage.h gstmeta.h gstmemory.h gstminiobject.h gstpad.h gstpadtemplate.h gstparamspecs.h gstpipeline.h gstplugin.h gstpluginfeature.h gstpoll.h gstpreset.h gstprotection.h gstquery.h gstpromise.h gstsample.h gstsegment.h gststreamcollection.h gststreams.h gststructure.h gstsystemclock.h gsttaglist.h gsttagsetter.h gsttask.h gsttaskpool.h gsttoc.h gsttocsetter.h gsttracer.h gsttracerfactory.h gsttracerrecord.h gsttypefind.h gsttypefindfactory.h gsturi.h gstutils.h gstvalue.h gstregistry.h gstparse.h > gstenumtypes.h
/usr/local/bin/glib-mkenums \
--fhead "#include \"gst_private.h\"\n#include <gst/gst.h>\n#define C_ENUM(v) ((gint) v)\n#define C_FLAGS(v) ((guint) v)\n " \
--fprod "\n/* enumerations from \"@filename@\" */" \
--vhead "GType\n@enum_name@_get_type (void)\n{\n  static gsize id = 0;\n  static const G@Type@Value values[] = {"     \
--vprod "    { C_@TYPE@(@VALUENAME@), \"@VALUENAME@\", \"@valuenick@\" }," \
--vtail "    { 0, NULL, NULL }\n  };\n\n  if (g_once_init_enter (&id)) {\n    GType tmp = g_@type@_register_static (\"@EnumName@\", values);\n    g_once_init_leave (&id, tmp);\n  }\n\n  return (GType) id;\n}" \
gst.h glib-compat.h gstobject.h gstallocator.h gstbin.h gstbuffer.h gstbufferlist.h gstbufferpool.h gstbus.h gstcaps.h gstcapsfeatures.h gstchildproxy.h gstclock.h gstcompat.h gstcontext.h gstcontrolbinding.h gstcontrolsource.h gstdatetime.h gstdebugutils.h gstelement.h gstelementmetadata.h gstdevice.h gstdeviceprovider.h gstdeviceproviderfactory.h gstdynamictypefactory.h gstelementfactory.h gsterror.h gstevent.h gstformat.h gstghostpad.h gstdevicemonitor.h gstinfo.h gstiterator.h gstatomicqueue.h gstmacros.h gstmessage.h gstmeta.h gstmemory.h gstminiobject.h gstpad.h gstpadtemplate.h gstparamspecs.h gstpipeline.h gstplugin.h gstpluginfeature.h gstpoll.h gstpreset.h gstprotection.h gstquery.h gstpromise.h gstsample.h gstsegment.h gststreamcollection.h gststreams.h gststructure.h gstsystemclock.h gsttaglist.h gsttagsetter.h gsttask.h gsttaskpool.h gsttoc.h gsttocsetter.h gsttracer.h gsttracerfactory.h gsttracerrecord.h gsttypefind.h gsttypefindfactory.h gsturi.h gstutils.h gstvalue.h gstregistry.h gstparse.h > gstenumtypes.c
gmake  all-recursive
gmake[5]: Entering directory '/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/gst'
Making all in parse
gmake[6]: Entering directory '/usr/ports/multimedia/gstreamer1/work/gstreamer-1.16.2/gst/parse'
/usr/local/bin/bison -d -v -ppriv_gst_parse_yy ./grammar.y -o grammar.tab.c && \
mv grammar.tab.c grammar.tab_tmp.c && \
echo '#ifdef HAVE_CONFIG_H' > grammar.tab_tmp2.c && \
echo '#include <config.h>' >> grammar.tab_tmp2.c && \
echo '#endif' >> grammar.tab_tmp2.c && \
cat grammar.tab_tmp.c >> grammar.tab_tmp2.c && \
rm grammar.tab_tmp.c && \
mv grammar.tab_tmp2.c grammar.tab.c
./grammar.y:799.1-12: warning: deprecated directive: ‘%pure-parser’, use ‘%define api.pure’ [
```
Thanks, 
Nedry


----------



## Alain De Vos (Dec 18, 2021)

I recently compiled gstreamer. I saw no errors. Strange. 
The port source files are updated ?


----------



## nedry (Dec 28, 2021)

Hi I pulled down the latest released ports tree on FreeBSD 13 unfortunately exact same error during compile. On FreeBSD 12.3 it compiles ok.


----------



## Tieks (Dec 28, 2021)

Since that bison command seems to fail, which version of devel/bison are you using? I can compile gstreamer1 with bison version 3.7.6 on FBSD 13.


----------



## nedry (Dec 29, 2021)

Ok thats strange as i am using bison version 3.7.6 on FreeBSD 13


----------



## covacat (Dec 29, 2021)

thats not reason it fails, its just a warning
i have that warning too and build succeeds


----------



## grahamperrin@ (Dec 31, 2021)

nedry said:


> FreeBSD 13



`pkg -vv | grep -e url -e enabled`
`freebsd-version -kru`
`uname -aKU`


----------

