David,

I take it you have been using the wiki pages on Building on Linux
(https://wiki.gnucash.org/wiki/Building_On_Linux). cmake is a little bit
tricky at first. I occasionally get the command syntax wrong if i haven't
done  a build for a while. The tricky bit is getting the relative addressing
from the build directory to the source directory correct. That is covered in
the breakout pages on cmake  Cmake Build Directory Structure Options and
Addressing. My preference is for including the build directory in the top
level folder which is extracted from the tarball which means in is easy to
locate when you have to do uninstalls (in preference to having the build
directory totally outside the directory). That top level folder usually
labelled gnucash-3.7 so my directory structure looks like

                                                       gnucash-3.7
                                                             |
             
------------------------------------------------------------------------------------
              |                     |                |             |           
|              |        |           |   .....
             build          bindings   borrowed     cmake      common   data  
doc     gnucash   ...


cmake does the job that ./configure does for the autotoiols build. It has to
be run from the build directory and it has to specify the install location
(I use "/usr/local" as I have several user accounts which use GnuCash  but
you can use "$HOME/.local" if you are doing a single user installation). I
open a terminal in the build directory from the file manager (simpler than
cd to the build directory) and then use the command

<code>cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DWITH_PYTHON=Yes ..</code>

at the prompt in the build directory (without the code tags). This will
locate the top level CMakeLists.txt file located in the gnucash-3.7 top
level directory and proceed from there. The space follwed by".." directly
after Yes is critical to address the correct file.  Most cmake problems are
about not locating the correct top level file. (There are also
CMakeLists.txt files in most of the subdirectories of gnucash-3.7 which in
turn are run by that top level file and addressing them instead will not
produce a build).

I created aliases for the cmake command so I don't have to remember it once
I had it right.  I also have a script for setting up the dependencies.make
which is attached.

The rest of the build and install is done by issuing the following commands
at the prompt($) in the build directory. The make command should run without
error. (you can also use ninja for these steps)

$make
$sudo make install

This will install:
the library files in /usr/local/lib/gnucash directory;
the shared files in /usr/local/share/gnucash directory;
the config files in /usr/local/etc/gnucash directory;
and /etc/gnucash  directory (global environment settings)
and the executable is /usr/local/bin/gnucash

to completely uninstall gnucash all of the above gnucash directories must be
deleted at these locations.

If you do a local installation under $HOME/.local the directories will be

$HOME/.local/lib/gnucash directory
$HOME/.local/share/gnucash directory
$HOME/.local/etc/gnucash directory
$HOME/.local/bin/gnucash (executable)
/etc/gnucash

IN either of the above cases the user config files are located in:
$HOME/.config/gnucash (css styling)
$HOME/.local/share/gnucash  (books checks translog, saved reports etc. That
this mixes user config information with program files is the other reason I
do not install under $HOME/.local. Too much chance of deleting saved reports
while updating or upgrading the program. There is no restriction to only
using $HOME/.local for a local installation. I have created and used a
$HOME/Applications directory in the past which could also be hidden by
prefixing it with a ".". That now usually has the source and build
directories for software packages I build from sources and I use a
$HOME/.installs  directory for any single user installations if I need to
which is rarely.

Hope this helps get you up and running on Linux Mint 19.2. 

gnucash-development-dependency-setup.sh
<http://gnucash.1415818.n4.nabble.com/file/t375329/gnucash-development-dependency-setup.sh>
  
is the dependency setup script. 

It has a few items that weren't on the explicit dependency list for GnuCash
I had to include for Linux Mint. You will need to change the permissions to
executable with 
<code>$chmod +x gnucash-development-dependency-setup.sh</code>in the
terminal open at the directory containing it and then 
<code>$./gnucash-development-dependency-setup.sh</code>  at a terminal
prompt to run it. 


Good Luck

David Cousens







-----
David Cousens
--
Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-User-f1415819.html
_______________________________________________
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
If you are using Nabble or Gmane, please see 
https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
-----
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.

Reply via email to