GnuCash 3.x kompilieren (Debian)
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
Google Test Umgebungsvariablen setzen
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
Hinweis: Notwendig für Deinstallation |
~/dev/gnucash-3.x-build |
Installation | Ausführbare Dateien
entweder ins Systemverzeichnis /usr/local oder vom System getrennt in /opt oder lokal unter ~./local |
/usr/local oder
/opt oder ~/.local |
Hinweis: Eine Installation in /opt/gnucash-3.x scheint nicht zu funktionieren. Nach der Installation erscheint beim Aufruf von Gnucash die Fehlermeldung "Breakpoint ausgelöst".
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
Zunächst Umgebungsvariablen setzen für #Google Test Umgebungsvariablen setzen
Ggf. eine installierte Version deinstallieren --> Gnucash deinstallieren
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 -DCMAKE_PREFIX_PATH=/opt ../gnucash-3.x
# As shown this will install in the /opt/gnucash-3.x directory.
# (Dies scheint nicht zu funktionieren, Verzeichnisstruktur vorbereiten)
# Daher besser Installation nach /usr/local
cmake -DCMAKE_INSTALL_PREFIX=/usr/local ../gnucash-3.x
# As shown this will install in the /usr/local directory.
make # builds the program and associated libraries
Gnucash installieren
cd ~/dev/gnucash-3.x-build make install # to install to /usr/local or /opt admin privileges are required.
Gnucash deinstallieren
cd ~/dev/gnucash-3.x-build make uninstall # to uninstall from /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 |