[GNC-dev] Build fail on Linux Mint 19.2
John Ralls
jralls at ceridwen.us
Mon Sep 9 22:53:10 EDT 2019
> On Sep 9, 2019, at 2:57 PM, David Cousens <davidcousens at bigpond.com> wrote:
>
> Hi John,
>
> I am getting a cmake configuration fail while trying to build v3.7 from the
> tarball on Linux Mint 19.2. I have cmake 3.13.4 installed. I've listed the
> glib swig and guile and gdk packages installed after the cmake output below
> and attached the cmake output log and error log from the build directory.
>
> The cmake error log seems to indicate a problem finding <gdk/gdk.h>. As far
> as I can see the dependencies are OK.
> $ locate gdk.h
> /usr/include/gtk-2.0/gdk/gdk.h
> /usr/include/gtk-3.0/gdk/gdk.h
>
> It may be a Linux Mint 19.2 related as I get the same errors building v3.6
> again from scratch. I can't remember having to rebuild it when I upgraded
> from Mint 19.1 to 19.2 a few weeks ago.
>
> David
>
> david at Mintie:~/Applications/gnucash-3.7$ mkdir build
> david at Mintie:~/Applications/gnucash-3.7$ cd build
> david at Mintie:~/Applications/gnucash-3.7/build$ cmake
> -DCMAKE_INSTALL_PREFIX=/usr/local -DWITH_PYTHON=yes ../gnucash
> -- The C compiler identification is GNU 7.4.0
> -- The CXX compiler identification is GNU 7.4.0
> -- Check for working C compiler: /usr/bin/cc
> -- Check for working C compiler: /usr/bin/cc -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Check for working CXX compiler: /usr/bin/c++
> -- Check for working CXX compiler: /usr/bin/c++ -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> CMake Error at CMakeLists.txt:5 (file):
> file problem creating directory: /glib-2.0/schemas
>
>
> -- Performing Test have_mod_mask
> -- Performing Test have_mod_mask - Failed
> CMake Error at gnome/CMakeLists.txt:59 (gnc_add_swig_guile_command):
> Unknown CMake command "gnc_add_swig_guile_command".
>
>
> CMake Warning (dev) in CMakeLists.txt:
> No cmake_minimum_required command is present. A line of code such as
>
> cmake_minimum_required(VERSION 3.13)
>
> should be added at the top of the file. The version specified may be
> lower
> if you wish to support older CMake versions for this project. For more
> information run "cmake --help-policy CMP0000".
> This warning is for project developers. Use -Wno-dev to suppress it.
>
> -- Configuring incomplete, errors occurred!
> See also
> "/home/david/Applications/gnucash-3.7/build/CMakeFiles/CMakeOutput.log".
> See also
> "/home/david/Applications/gnucash-3.7/build/CMakeFiles/CMakeError.log".
> david at Mintie:~/Applications/gnucash-3.7/build$
>
> the glib packages installed are:
>
> david at Mintie:~$ apt-cache search glib-2.0
> gir1.2-glib-2.0 - Introspection data for GLib, GObject, Gio and GModule
> gir1.2-spiceclientglib-2.0 - GObject for communicating with Spice servers
> (GObject-Introspection)
> libqt5glib-2.0-0 - C++ bindings library for GLib and GObject with a Qt-style
> API - Qt 5 build
> libspice-client-glib-2.0-8 - GObject for communicating with Spice servers
> (runtime library)
> libspice-client-glib-2.0-dev - GObject for communicating with Spice servers
> (development files)
> david at Mintie:~$ dpkg -l | grep libglib
> ii libglib-object-introspection-perl 0.044-2
> amd64 Perl bindings for gobject-introspection libraries
> ii libglib-perl
> 3:1.326-1build1 amd64 interface to the
> GLib and GObject libraries
> ii libglib2.0-0:amd64
> 2.56.4-0ubuntu0.18.04.4 amd64 GLib library of
> C routines
> ii libglib2.0-bin
> 2.56.4-0ubuntu0.18.04.4 amd64 Programs for the
> GLib library
> ii libglib2.0-cil
> 2.12.40-2 amd64 CLI binding for
> the GLib utility library 2.12
> ii libglib2.0-cil-dev
> 2.12.40-2 amd64 CLI binding for
> the GLib utility library 2.12
> ii libglib2.0-data
> 2.56.4-0ubuntu0.18.04.4 all Common files for
> GLib library
> ii libglib2.0-dev:amd64
> 2.56.4-0ubuntu0.18.04.4 amd64 Development
> files for the GLib library
> ii libglib2.0-dev-bin
> 2.56.4-0ubuntu0.18.04.4 amd64 Development
> utilities for the GLib library
> ii libglib2.0-doc
> 2.56.4-0ubuntu0.18.04.4 all Documentation
> files for the GLib library
> ii libglib2.0-tests
> 2.56.4-0ubuntu0.18.04.4 amd64 GLib library of
> C routines - installed tests
> ii libglib3.0-cil
> 2.99.3-2 amd64 CLI binding for
> the GLib library of C routines
> ii libglib3.0-cil-dev
> 2.99.3-2 amd64 CLI binding for
> the GLib utility library 2.12
> ii libglibmm-2.4-1v5:amd64
> 2.56.0-1 amd64 C++ wrapper for
> the GLib toolkit (shared libraries)
> ii libglibmm-2.4-dev:amd64
> 2.56.0-1 amd64 C++ wrapper for
> the GLib toolkit (development files)
>
>
> The cmake log and error log fromgnucash-3.7/build/CMakefiles are attached:
>
> CMakeOutput.log
> <http://gnucash.1415818.n4.nabble.com/file/t375329/CMakeOutput.log>
> CMakeError.log
> <http://gnucash.1415818.n4.nabble.com/file/t375329/CMakeError.log>
>
> Installed swig files:
> david at Mintie:~$ dpkg -l | grep swig
> ii swig
> 3.0.12-1 amd64 Generate
> scripting interfaces to C/C++ code
> ii swig3.0
> 3.0.12-1 amd64 Generate
> scripting interfaces to C/C++ code
> david at Mintie:~$
>
> Installed guile packages:
> david at Mintie:~$ dpkg -l |grep guile
> ii guile-2.0
> 2.0.13+1-5ubuntu0.1 amd64 GNU extension
> language and Scheme interpreter
> ii guile-2.0-dev
> 2.0.13+1-5ubuntu0.1 amd64 Development
> files for Guile 2.0
> ii guile-2.0-libs:amd64
> 2.0.13+1-5ubuntu0.1 amd64 Core Guile
> libraries
> david at Mintie:~$
>
> Installed gdk packages
>
> david at Mintie:~$ dpkg -l | grep gdk
> ii gir1.2-gdkpixbuf-2.0:amd64
> 2.36.11-2 amd64 GDK Pixbuf
> library - GObject-Introspection
> ii libgdk-pixbuf2.0-0:amd64
> 2.36.11-2 amd64 GDK Pixbuf
> library
> ii libgdk-pixbuf2.0-bin
> 2.36.11-2 amd64 GDK Pixbuf
> library (thumbnailer)
> ii libgdk-pixbuf2.0-common
> 2.36.11-2 all GDK Pixbuf
> library - data files
> ii libgdk-pixbuf2.0-dev
> 2.36.11-2 amd64 GDK Pixbuf
> library (development files)
> ii libgdk3.0-cil
> 2.99.3-2 amd64 CLI binding for
> GDK 3
> ii libgdk3.0-cil-dev
>
David,
Try using -DCMAKE_INSTALL_PREFIX=$HOME/.local. Cmake performs unnatural acts on paths beginning with /usr and /opt.
You might also need to apply https://github.com/Gnucash/gnucash-on-windows/blob/master/patches/FindSWIG.patch to help CMake file your Swig installation.
Gdk is not a separate package, it's part of gtk+-3.0 and of course you need the dev package so that you have the headers. libgdk-cil is .Net/Mono (C#) bindings for Gdk, nothing to do with GnuCash.
Regards,
John Ralls
More information about the gnucash-devel
mailing list