TLDR:
Is there an up to date list of strictly versioned distro+dependencies that
is known to work for building/running the stable branch? I am happy to use
any distro as I'm trying to build a docker container to build/test.

Details:
It seems the build instructions are a bit of a mess currently.

To start in the README in github:

> Developing GnuCash
> ------------------
> Before you start developing GnuCash, you should do the following:
> 1. Read https://wiki.gnucash.org/wiki/Development
> 2. Look over the doxygen-generated documentation at
>     https://code.gnucash.org/docs/MASTER/ or
>     https://code.gnucash.org/docs/MAINT/


doxygen doc links are both broken.  Following
https://wiki.gnucash.org/wiki/Development:

A general description of the tools used to configure and build GnuCash is
> given in Build tools <https://wiki.gnucash.org/wiki/Build_Tools>.


This lists Make, Ninja, CMake, and Autotools, but what min/max versions?

A listing of dependencies is available at Dependencies
> <https://wiki.gnucash.org/wiki/Dependencies>.


This only lists up to version 4.11

Detailed instructions for building GnuCash on Linux distributions can be
> found on Building On Linux.


Installing the Build Tools
> <https://wiki.gnucash.org/wiki/Install_Build_Tools>;
>

There we find:
build-essential
make
cmake
build-essential
autoconf
automake
libtool
m4

But again with no dist/version restrictions mentioned. There is a lot of
wordage in the docs cautioning about all the differences between
distros/packages, but no central source for which distro/version +
dependencies/versions is known to work.

Installing Dependencies
> <https://wiki.gnucash.org/wiki/Installing_Dependencies>.


Up to date information on the dependencies may be obtained from:


   -

   the Dependencies <https://wiki.gnucash.org/wiki/Dependencies> wiki page;


 This again points to the info up to version 4.11

GitHub GnuCash master branch README.dependencies
> <https://github.com/Gnucash/gnucash/blob/master/README.dependencies>; or
>

This points to a file committed 8 years ago, though it does have explicit
version tags for dependencies! :D

sudo apt install libtool libltdl-dev
> sudo apt install icu-devtools libicu-dev
> sudo apt install libglib2.0-0 libglib2.0-dev   #glib2 > v2.40.0
> sudo apt install libboost-all-dev            # boost > 1.50.0  - requires
> locale and regex built with ICU support
> sudo apt install guile-2.0 guile-2.0-dev     # guile >=2.0.0
> sudo apt install swig2.0                     # swig  >2.0.10  - swig3.0 on
> some systems
>                                              # not required if building
> from tarball,
>                                              # but required if building
> from a git clone
> sudo apt install libxml2 libxml++2.6-dev libxml2-utils
> sudo apt install libxslt1.1 libxslt1-dev
> sudo apt install xsltproc
> sudo apt install texinfo                     # required for makeinfo
> sudo apt install libsecret-1-0 libsecret-1-dev
> # Only use the next 2 lines if you have not installed [[Google_Test |
> Google Test]] already.
> sudo apt install libgtest-dev                # >=1.7.0
> sudo apt install google-mock                 # 1.8.0 installs googlemock
> in a subdirectory of gtest
> sudo apt install libgtk-3-dev libgtk-3-bin   # gtk+3.0 >= 3.22.30
> sudo apt install libwebkit2gtk-4.0-37 libwebkit2gtk-4.0-dev  # >
> webkit2gtk-3.0


Many of these are out of date on Ubuntu 22.04:

> Package 'guile-2.0' has no installation candidate
> Unable to locate package guile-2.0-dev
> Couldn't find any package by glob 'guile-2.0-dev'
> Couldn't find any package by regex 'guile-2.0-dev'
> Package 'swig2.0' has no installation candidate
> Version '1.8.0' for 'google-mock' was not found



Building and Installing the GnuCash Program
>
The easy way to install most of GnuCash's dependencies is to use your
> package manager's build dependencies feature as root:

apt-get build-dep gnucash         # Debian based
>

Returns:

> Reading package lists... Done

E: Unable to find a source package for gnucash


What about this arch based Dockerfile?
https://github.com/Gnucash/gnucash/blob/5ce3a9dd1d88c4717a7718c6d556b1235ac7536c/util/ci/actions/archlinux-test/Dockerfile

Is this enough to build and run or is this just enough for the ci tests?

Is no one maintaining a Docker Image/file for repeatable builds? How are
releases/flatpak builds maintained?

I'll keep trial/error installing everything to an Ubuntu 22.04 docker base
image to see how far I can get in the meantime.

Thanks in advance!
_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to