Missing dependencies with meson build

Hello i am in the process of installing the aravis libary on a jetson nano in order to work with a jai camera. I have fulfilled most dependencies but still get two errors that i am not able to remove. “Compiler for C supports arguments -Wenum-conversion: NO” and “Run-time dependency gi-docgen found: NO (tried pkgconfig and cmake)
Looking for a fallback subproject for the dependency gi-docgen”
When i try to build it will ninja it fails, is this because of the two errors?
Anyone here who have experienced the same problem?
I have attached the terminal output when building.
Your help is very appreciated!
Best regards.

dyn-dev@dyndev-desktop:~/projects/aravis$ meson build
The Meson build system
Version: 0.62.0
Source dir: /home/dyn-dev/projects/aravis
Build dir: /home/dyn-dev/projects/aravis/build
Build type: native build
Project name: aravis
Project version: 0.8.22
C compiler for the host machine: cc (gcc 7.5.0 "cc (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0")
C linker for the host machine: cc ld.bfd 2.30
C++ compiler for the host machine: c++ (gcc 7.5.0 "c++ (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0")
C++ linker for the host machine: c++ ld.bfd 2.30
Host machine cpu family: aarch64
Host machine cpu: aarch64
Compiler for C supports arguments -Wduplicated-branches: YES 
Compiler for C supports arguments -Wimplicit-fallthrough: YES 
Compiler for C supports arguments -Wmisleading-indentation: YES 
Compiler for C supports arguments -Wstrict-prototypes: YES 
Compiler for C supports arguments -Wunused: YES 
Compiler for C supports arguments -Wunused-variable: YES 
Compiler for C supports arguments -Wdeclaration-after-statement: YES 
Compiler for C supports arguments -Wformat=2: YES 
Compiler for C supports arguments -Wimplicit-function-declaration: YES 
Compiler for C supports arguments -Winit-self: YES 
Compiler for C supports arguments -Wmissing-include-dirs: YES 
Compiler for C supports arguments -Wmissing-prototypes: YES 
Compiler for C supports arguments -Wpointer-arith: YES 
Compiler for C supports arguments -Wformat-nonliteral: YES 
Compiler for C supports arguments -Wenum-conversion: NO 
Compiler for C supports arguments -Wmaybe-uninitialized: YES 
Compiler for C supports arguments -fvisibility=hidden: YES 
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Run-time dependency glib-2.0 found: YES 2.56.4
Run-time dependency gobject-2.0 found: YES 2.56.4
Run-time dependency gio-2.0 found: YES 2.56.4
Run-time dependency libxml-2.0 found: YES 2.9.4
Run-time dependency zlib found: YES 1.2.11
Run-time dependency libusb-1.0 found: YES 1.0.21
Library m found: YES
Has header "linux/if_packet.h" : YES 
Program glib-mkenums found: YES (/usr/bin/glib-mkenums)
Program glib-mkenums found: YES (/usr/bin/glib-mkenums)
Program glib-mkenums found: YES (/usr/bin/glib-mkenums)
Program glib-mkenums found: YES (/usr/bin/glib-mkenums)
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Configuring arvapi.h using configuration
Configuring arvfeatures.h using configuration
Configuring arvparamsprivate.h using configuration
Configuring arvversion.h using configuration
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program g-ir-scanner found: YES (/usr/bin/g-ir-scanner)
Run-time dependency gobject-introspection-1.0 found: YES 1.56.1
Dependency gobject-introspection-1.0 found: YES 1.56.1 (cached)
Dependency gobject-introspection-1.0 found: YES 1.56.1 (cached)
Program g-ir-scanner found: YES (/usr/bin/g-ir-scanner)
Dependency gobject-introspection-1.0 found: YES 1.56.1 (cached)
Program g-ir-compiler found: YES (/usr/bin/g-ir-compiler)
Program python3 found: YES (/usr/bin/python3)
Configuring pylaunch using configuration
Configuring pylaunch-dbg using configuration
Configuring jslaunch using configuration
Configuring jslaunch-dbg using configuration
Run-time dependency gtk+-3.0 found: YES 3.22.30
Run-time dependency gstreamer-base-1.0 found: YES 1.14.5
Run-time dependency gstreamer-app-1.0 found: YES 1.14.5
Run-time dependency gstreamer-video-1.0 found: YES 1.14.5
Program msgfmt found: YES (/usr/bin/msgfmt)
Program msginit found: YES (/usr/bin/msginit)
Program msgmerge found: YES (/usr/bin/msgmerge)
Program xgettext found: YES (/usr/bin/xgettext)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Configuring arv-viewer-0.8.appdata.xml using configuration
Configuring arv-viewer.desktop.in using configuration
Dependency gstreamer-base-1.0 found: YES 1.14.5 (cached)
Dependency gstreamer-app-1.0 found: YES 1.14.5 (cached)
Configuring gst-aravis-launch using configuration
Configuring gst-aravis-inspect using configuration
Found CMake: /usr/bin/cmake (3.22.2)
Run-time dependency gi-docgen found: NO (tried pkgconfig and cmake)
Looking for a fallback subproject for the dependency gi-docgen
Cloning into 'gi-docgen'...
remote: Enumerating objects: 149, done.
remote: Counting objects: 100% (149/149), done.
remote: Compressing objects: 100% (136/136), done.
remote: Total 149 (delta 25), reused 103 (delta 11), pack-reused 0
Receiving objects: 100% (149/149), 2.47 MiB | 2.50 MiB/s, done.
Resolving deltas: 100% (25/25), done.

Executing subproject gi-docgen 

gi-docgen| Project name: gi-docgen
gi-docgen| Project version: 2022.2
gi-docgen| Program python3 (jinja2, markdown, markupsafe, pygments, toml, typogrify) found: YES (/usr/bin/python3) modules: jinja2, markdown, markupsafe, pygments, toml, typogrify
gi-docgen| Program gi-docgen.py found: YES (/home/dyn-dev/projects/aravis/subprojects/gi-docgen/gi-docgen.py)
gi-docgen| Configuring gi-docgen.pc using configuration
gi-docgen| Build targets in project: 70
gi-docgen| Subproject gi-docgen finished.

Dependency gi-docgen from subproject subprojects/gi-docgen found: YES 2022.2
Program gi-docgen.py found: YES (overridden)
Configuring aravis.toml using configuration
Build targets in project: 71

aravis 0.8.22

  Directories
    prefix          : /usr/local
    bindir          : bin
    libdir          : lib/aarch64-linux-gnu
    datadir         : share

  Options
    Viewer          : True
    GStreamer plugin: True
    USB support     : True

  Subprojects
    gi-docgen       : YES

Found ninja-1.8.2 at /usr/bin/ninja

Hi,

The errors you are mentioning are not actual errors.

The first one is about an unsupported compilation flag by the compiler you are using, but that just means meson will not use this flags for the compilation.

The second one is due to gi-docgen not installed on your system, which is fine because meson takes care to install it in the subprojects directory.

I’m not seeing the output of ninja. Did you forget to actually execute the ninja command after meson configuration is done ?

Hi,
Yes i am sorry i did forget to attatch my ninja log. This is what happens when i type ninja in the build folder.

dyn-dev@dyndev-desktop:~/aravis/build$ ninja
[181/184] Generating src/Aravis-0.8.gir with a custom command
g-ir-scanner: link: cc -o /home/dyn-dev/aravis/build/tmp-introspectoesz3q8r/Aravis-0.8 /home/dyn-dev/aravis/build/tmp-introspectoesz3q8r/Aravis-0.8.o -L. -Wl,-rpath,. -Wl,--no-as-needed -laravis-0.8 -lglib-2.0 -lgobject-2.0 -lgio-2.0 -lxml2 -lz -lm -lusb-1.0 -lgirepository-1.0 -L/home/dyn-dev/aravis/build/src -Wl,-rpath,/home/dyn-dev/aravis/build/src -lgio-2.0 -lgobject-2.0 -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0
[184/184] Generating docs/reference/aravis/aravis-doc with a custom command
FAILED: docs/reference/aravis/aravis-0.8 
/home/dyn-dev/aravis/subprojects/gi-docgen/gi-docgen.py generate --quiet --no-namespace-dir --add-include-path=/home/dyn-dev/aravis/build/docs/reference/aravis/../../../src --config=docs/reference/aravis/aravis.toml --output-dir=docs/reference/aravis/aravis-0.8 --content-dir=/home/dyn-dev/aravis/docs/reference/aravis src/Aravis-0.8.gir
Traceback (most recent call last):
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gidocmain.py", line 74, in run
    res = options.run_func(options)
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gdgenerate.py", line 3111, in run
    parser.parse(options.infile)
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 92, in parse
    repository = self._parse_tree(tree.getroot())
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 242, in _parse_tree
    self._parse_dependency(include)
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 191, in _parse_dependency
    repository = self._parse_tree(tree.getroot())
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 242, in _parse_tree
    self._parse_dependency(include)
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 191, in _parse_dependency
    repository = self._parse_tree(tree.getroot())
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 268, in _parse_tree
    parser_method(node, repository, namespace)
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 457, in _parse_alias
    self._maybe_parse_docs(node, res)
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 320, in _maybe_parse_docs
    doc = self._maybe_parse_doc(node)
  File "/home/dyn-dev/aravis/subprojects/gi-docgen/gidocgen/gir/parser.py", line 290, in _maybe_parse_doc
    return ast.Doc(content=content, filename=child.attrib['filename'], line=int(child.attrib['line']))
KeyError: 'filename'
ninja: build stopped: subcommand failed.

On which platform are you building Aravis ?

Meanwhile, you can disable the documentation build:

meson configure -Ddocumentation=disabled

I am using a jetson nano.
Thank you a lot! When i disabled the documentation ninja was able to install and aravis now works.

Best Regards.