GnuCash 3.x kompilieren (Debian)

Aus MattWiki

Dieser Artikel beschreibt, wie GnuCash 3.x aus den Quellcodes gebaut werden kann..

Für GnuCash ab Version 3.0 bestehen neue Anforderungen an das Build-System. Dadurch verändert sich auch der Build-Prozess.

Voraussetzungen installieren

Build essentials

apt install build-essential
gcc --version
autoconf --version 

Autotools

apt install autoconf      # loads autoscan, autoconf and associated macros 
apt install automake 
apt install libtool 
apt install m4

Make und CMake

# apt-get install gcc cmake

Google Test installieren

Google Test Version 1.8.0 wird benötigt. Installation under Debian:

# apt-get install googletest

Alternativ selbst bauen. Anleitung hier: https://wiki.gnucash.org/wiki/Google_Test

Es werden noch Umgebungsvariablen benötigt:

# export GMOCK_ROOT=/usr/src/googletest/googlemock
# export GTEST_ROOT=/usr/src/googletest/googletest

Abhängigkeiten (Dependencies) installieren

In Debian kann man Abhängigkeiten folgendermaßen installieren:

# apt-get build-dep gnucash  

Dies klappt jedoch nur, wenn in der verwendeten Version der Distribution die gleiche Version von Gnucash vorliegt, wie die, die man bauen möchte. Falls dies nicht der Fall ist, kann es sein, dass man manche benötigen Pakete manuell beschaffen muss.

Benötigte Pakete sind beschrieben in README.dependencies oder hier: https://wiki.gnucash.org/wiki/Installing_Dependencies

Verzeichnisstruktur vorbereiten

Ab Version 3.x mit CMake können die gebaute Applikation und die Quellen nicht im gleichen Verzeichnis vorliegen.

Es empfehlen sich daher folgende drei Verzeichnisse:

Inhalt Beschreibung Beispielpfad
Quellen Quellcodedateien ~/dev/gnucash-3.x
Build Dateien für den Build-Vorgang ~/dev/gnucash-3.x-build
Installation Ausführbare Dateien entweder

ohne oder mit Programmname.

/opt ermöglicht es, die Installationsdateien

vom Rest der Distribution zu trennen

Ohne Programmname: /usr/local oder /opt

Mit Programmname: /opt/gnucash-3.x

Download

Bei obiger Verzeichnisstruktur z.B. nach ~/dev/

Quellcodedownload siehe https://www.gnucash.org/index.phtml

cd ~/dev
wget <url>
sha256sum gnucash-version.tar.bz2       # Check checksum against README-File from Download-Page
tar -xjvf gnucash-version.tar.bz2 -C 

Build-Daten aufbauen

cd ~/dev
mkdir gnucash-3.x-build    # create build directory
cd gnucash-3.x-build       # change into the build directory
cmake -DCMAKE_INSTALL_PREFIX=/opt/gnucash-3.x ../gnucash-3.x
                           # As shown this will install in the /opt/gnucash-3.x directory.
make                       # builds the program and associated libraries

Gnucash installieren

make install               # to install to /usr/local or /opt admin privileges are required.

Quellen

Quelle URL
Übersicht des Bau-Prozesses https://wiki.gnucash.org/wiki/Building
Anleitung zum Bauen unter Linux https://wiki.gnucash.org/wiki/Building_On_Linux
Übersicht Voraussetzungen / Build Tools https://wiki.gnucash.org/wiki/Install_Build_Tools