gst-interpipe
gst-interpipe copied to clipboard
gtk-doc error while building interpipe
Hello guys,
When I try to build gst-interpipe using meson I get a gtk-doc error:
ERROR: Error in gtkdoc helper script:
ERROR: ['/usr/bin/gtkdoc-mkhtml', '--path=/gst-interpipe/docs/plugins:/gst-interpipe/build/docs/plugins', 'gst-interpipes', '..//gst-interpipe/build/docs/plugins/gst-interpipe-docs.xml'] failed with status 6
warning: failed to load external entity "/gst-interpipe/build/docs/plugins/xml/tree_index.sgml"
/gst-interpipe/build/docs/plugins/gst-interpipe-docs.xml:34: element include: XInclude error : could not load /gst-interpipe/build/docs/plugins/xml/tree_index.sgml, and no fallback was found
--- stderr ---
FAILED: install script '/usr/bin/meson --internal gtkdoc --sourcedir=/gst-interpipe --builddir=/gst-interpipe/build --subdir=docs/plugins --headerdirs=/gst-interpipe/gst/interpipe/@@/gst-interpipe/build/docs/plugins --mainfile=/gst-interpipe/build/docs/plugins/gst-interpipe-docs.xml --modulename=gst-interpipes --moduleversion= --mode=auto --gtkdoc-scan=/usr/bin/gtkdoc-scan --gtkdoc-scangobj=/usr/bin/gtkdoc-scangobj --gtkdoc-mkdb=/usr/bin/gtkdoc-mkdb --gtkdoc-mkhtml=/usr/bin/gtkdoc-mkhtml --gtkdoc-fixxref=/usr/bin/gtkdoc-fixxref --htmlargs= --scanargs= --scanobjsargs= --gobjects-types-file=/gst-interpipe/build/docs/plugins/gst-interpipe.types --fixxrefargs= --mkdbargs= --html-assets= --content-files=/gst-interpipe/build/docs/version.entities --expand-content-files= --ignore-headers= --installdir= --cc=cc --ld=cc --cflags=-I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -pthread -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wformat -Wformat-nonliteral -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Waggregate-return -Wno-multichar -Wdeclaration-after-statement -Wvla -Wpointer-arith --ldflags=-lgstapp-1.0 -lgstreamer-1.0 -lglib-2.0 -lintl -lgobject-2.0 -lgstbase-1.0' exit code 1, stopped
ninja: job failed: /usr/bin/meson install --no-rebuild
ninja: subcommand failed
It seems caused by a new gtk-doc release (https://gitlab.gnome.org/GNOME/gtk-doc/-/issues/103) but I tried to fork this repo and to replace tree_index.sgml by object_index.sgml and I got the same error.
gtk-doc version: 1.33.2-r3
I'm building under Alpine Linux v3.17 (if it has any importance).
Do you have an idea how to fix it ?
Thanks.
+1 same issue here with Ubuntu 20.04 and gtk-doc-tools 1.32-4
This bug has been around for sometime, I spent days to fix it but no luck. But as matter of fact, building the docs happens after compiling the interpipe library. So, you can ignore the error and install the library sudo meson install -C build
, you will get another error there, ignore that as well. The library installs normally.
For anyone reading this, it is been more than a year and the bug is still there. As my previous comment, the library itself builds without any problem. But if building of docs terminates your CI/CD pipeline, you can use this workaround:
sed -i '173d' meson.build
rm -rf docs
meson --prefix=/usr -Dbuildtype=release build
for example my Docker file section for Interpipe looks like this:
RUN cd /opt && \
git clone https://github.com/RidgeRun/gst-interpipe.git && \
cd gst-interpipe && \
sed -i '173d' meson.build && \
rm -rf docs && \
meson --prefix=/usr -Dbuildtype=release build && \
ninja -C build && \
meson install -C build && \
rm -rf /opt/gst-interpipe