Before you can compile the libqmi library, you will need at least the following tools:
- A compliant C toolchain: e.g.
- pkg-config, a tool for tracking the compilation flags needed for libraries.
- The glib2 library.
- For libqmi >= 1.30, glib2 >= 2.56.
- For libqmi >= 1.26, glib2 >= 2.48.
- For libqmi >= 1.18 and < 1.26, glib2 >= 2.36
- For libqmi >= 1.0 and < 1.18, glib2 >= 2.32
In addition to the previous mandatory requirements, the project also has several optional dependencies that would be needed when enabling additional project features:
- libmbim, in order to use the QMI-over-MBIM feature.
- For libqmi >= 1.22, libmbim >= 1.18.
- For libqmi >= 1.16 and < 1.22, libmbim >= 1.14.
- libqrtr-glib, in order to use the QMI-over-QRTR feature.
- For libqmi >= 1.28, libqrtr-glib >= 1.0.
- The libgudev library, in order to extend the
qmi-firmware-updateoptions and behavior.
- For libqmi >= 1.30, libgudev >= 232.
- For libqmi >= 1.18, libgudev >= 147.
- gtk-doc tools, in order to regenerate the documentation.
- gobject-introspection, in order to generate the introspection support.
Dependencies when building libqmi 1.30 or later with meson
When building with meson, the following additional dependencies are required:
The following optional dependencies are available when building with meson:
- bash-completion, in order to add completion support for the command line tools.
Dependencies when building libmbim 1.30 or earlier with GNU autotools
When building with the GNU autotools, the following additional dependencies are required:
There are two main ways to build the library using GNU autotools: from a git repository checkout and from a source release tarball. When building from a git checkout instead of from a source tarball, the following additional dependencies are required:
- GNU autotools (autoconf/automake/libtool).
- Autoconf archive, in the 1.26 and 1.28 series exclusively.