David and Paul,

I build from a git clone on a Ubuntu (now 26.04.1 LTS).

Attached is a script to install the dependencies.  It may not be up-to-date as I haven't had to run it for a couple of years (in fact the file system says it was updated 7 years ago).

Also attached is a script to build (but not install) from the git clone.
Note that both of these scripts live in /~/Projects/GnuCash.
The git clone lives in /-/Projects/GnuCash/gnucash.

When I see that a fix has been applied to a daily build I then do:

   cd Projects/GnuCash/gnucash
   git pull
   cd ..
   build*
   cd (to the older Build folder)
   sudo make uninstall
   cd ..
   cd (to the newest Build folder)
   sudo make install

At some point, when I don't think I'll need to fall back), I then remove the older Build folder (sudo rm -rf Build*-xx).

Note that I am keeping some debugging info as GnC sometimes aborts when doing switching to another set of books.  So you might want to change some of the info on cmake and make in the build script.

--Steve


On 10/5/26 13:09, David Cousens wrote:
Paul,

Those are the three options availablefor installing GnuCash on Linux.
Building from the tarball (or a cone from the Github repository is
fairly simple once you have the dependencies setup. The first step is
to run cmake to setup the build files. That process halts when a
missing dependency (most commonly the development header for a library)
is not found on the system. Sometimes the library files have a slightly
different name from what cmake reports as the library name. Using "apt-
cache search <package name>" at a terminal you can usually identify the
appropriate name to use and load with apt ( maybe apt-get on Ubuntu).
At various times there have been shell scripts for loading the
dependencies if you search the mailing list archives. They may need a
bit of updating. I run Linux Mint and when I do a new install of the OS
from scratch I usually use the above strategy with cmake and apt-search
and update the shell script first time I build on a new OS install. I
think there is a copyof the shell script on the Wiki in the Linux
install section as well.

You can install all three versions but you may get some collisions
between the install from a repository and a self built version, less so
with the flatpak because it is sandboxed. Where the flatpak places the
user preference files may be different although I don't know that is
necessarily the case.

I usually build and install on Linux MInt in /usr/local and AFAIK the
repository version gets installed under /usr but there may be conflicts
with the shared library files if they are different versions of GC
although AFAIK they are still separate. It's been so long since I
installed the repository version (2.something) that I am no longer
sure. The Ubuntu and Linux Mint repositories usually only catch up to a
fairly recent version at a major OS release point.

On Sun, 2026-10-04 at 19:32 -0400,[email protected] wrote:
Playing around with a VM that I had earlier installed 5.14 on, I
found
GC failed to start after Ubuntu upgraded itself to 26.04. It's an
unimportant historical install, so I just started hacking at things.
I
updated the dependencies and tried a new build, but that also failed,
so
I just deleted the whole gnucash folder in /opt and am about to
restart
from scratch.

This whole thing is an exercise in better understand how the various
elements interact or conflict, so I'm just playing. It seems I have 3
basic alternatives:
1. build from source (presumably download the sources tarball, expand
and run the build)
2. use Software to install the default gnucash from the Ubuntu
repositories
3. use Software to install the flatpak version

Is that correct, and are all three of these fundamentally equivalent
(vis-a-vis execution, not development) if successfully installed?

Also, can I do all three on the same Ubuntu system without creating
conflicts?

Thanks for all help, Paul
_______________________________________________
gnucash-user mailing list
[email protected]
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-----
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.

Attachment: gnucash-development-depndency-setup.sh
Description: application/shellscript

#!/bin/bash
#
#  build-gnucash
#
# NOte:  do a git pull followed by git checkout of version desired before 
starting script

cd $HOME/Projects/GnuCash/gnucash

GITVER=$(git describe)
MYVER=${GITVER%-*}
MYRPR=Build-gnucash_${MYVER}
echo $MYVER

cd ..

rm -rf $MYRPR  > /dev/null

mkdir $MYRPR

cd $MYRPR

#cmake -DCMAKE_BUILD_TYPE=Asan -DCMAKE_INSTALL_PREFIX=/usr/local  ../gnucash
#cmake -DCMAKE_BUILD_TYPE=debug -DCMAKE_INSTALL_PREFIX=/usr/local  ../gnucash
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr/local  
../gnucash

make

echo ' ##  sudo make install'

_______________________________________________
gnucash-user mailing list
[email protected]
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-----
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