[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