This is the documentation for gtkmm, a C++ API for GTK. See http://www.gtkmm.org/ gtkmm-documentation can be built with Autotools or Meson. Building with Autotools may be phased out in the future. Building with Meson ------------------- Create a build directory: $ cd gtkmm-documentation $ meson [options] <build-dir> Do not call the build-dir gtkmm-documentation/build. There is already such a directory, used when building with Autotools. Print a list of configuration options: $ cd <build-dir> $ meson configure Example of changing options: $ cd <build-dir> $ meson configure --prefix=/opt/gnome -Dbuild-translations=true Create the html files of the tutorial: $ cd <build-dir> $ ninja Install them: $ ninja install If you have chosen to build translated XML files (build-translations=true), installation can take some time, because the translations are built by 'ninja install'. This may change in the future. See mesonbuild/meson#2775 Build the example programs: $ ninja examples or (probably slower) $ ninja test Create a PDF file: $ meson configure -Dbuild-pdf=true $ ninja This requires that you have either the dblatex or the xmllint and docbook2pdf commands installed. Make a tarball: $ ninja dist In addition to the files in the git repository, the tarball will contain some built files. These files must already exist. 'ninja dist' will fail, unless you have previously run 'ninja' and 'ninja install' with build-translations=true. This tarball is not identical to one made with "make dist" or "make distcheck". There is e.g. no "configure" file. If you want to use a tarball made with "ninja dist" for building with Autotools, you have to start with ./autogen.sh.