GnuCash 3.x kompilieren (Debian): Unterschied zwischen den Versionen

Aus MattWiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(24 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 4: Zeile 4:
Für GnuCash ab Version 3.0 bestehen neue Anforderungen an das Build-System. Dadurch verändert sich auch der Build-Prozess.
Für GnuCash ab Version 3.0 bestehen neue Anforderungen an das Build-System. Dadurch verändert sich auch der Build-Prozess.


= Voraussetzungen =
== Voraussetzungen installieren ==
Folgende Pakete sollten auf dem System installiert sein:
'''Build essentials'''
* cmake für Gnucash-Versionen >= 2.7.4
apt install build-essential
* C++ Compiler mit Unterstützung für ISO-Standards C++11 --> GCC 4.8 sollte funktionieren
gcc --version
  # apt-get install gcc cmake
 
  [[Kategorie:Linux]]
 
   
'''Autotools'''
  [[Kategorie:Kompilieren]]
Prüfen, ob Autotools installiert sind:
  [[Kategorie:GnuCash]]
 
autoconf --version
 
Wenn Autotools nicht installiert sind, dann installieren:
 
apt install autoconf      # loads autoscan, autoconf and associated macros
apt install automake
apt install libtool
apt install m4
 
'''Make und CMake'''
Prüfen, ob make und cmake installiert sind:
 
make --version
cmake --version
 
Wenn nicht installiert, dann installieren:
 
# apt install 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 Umgebungsvariablen im Userkontext des Users, der den Build-Vorgang ausführt, 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 <code>README.dependencies</code> 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:
{| class="wikitable"
!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 ==
 
'''Nicht vergessen:''' [[#Google Test Umgebungsvariablen setzen|Google Test Umgebungsvariablen setzen]]
 
'''Nicht vergessen:''' Bestehende Installation vorhanden? [[#Gnucash 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=/usr/local ../gnucash-3.x
                            # This will install in the /usr/local directory.
make                       # builds the program and associated libraries
 
'''Hinweis:''' Build-Dateien für spätere Deinstallation aufheben.
 
== Gnucash installieren ==
Installation muss mit Root-Rechten ausgeführt werden:
 
# cd ~/dev/gnucash-3.x-build
# make install               # to install to /usr/local or /opt admin privileges are required.
 
== Gnucash deinstallieren ==
Deinstallation muss mit Root-Rechten ausgeführt werden:
 
# cd ~/dev/gnucash-3.x-build
  # make uninstall             # to uninstall from /usr/local or /opt admin privileges are required.
 
== Troubleshooting ==
 
=== Kursabfrage ===
 
Siehe [[GnuCash Online-Kursabfragen]]


== Quellen ==
== Quellen ==
Zeile 24: Zeile 133:
|Anleitung zum Bauen unter Linux
|Anleitung zum Bauen unter Linux
|https://wiki.gnucash.org/wiki/Building_On_Linux
|https://wiki.gnucash.org/wiki/Building_On_Linux
|-
|Übersicht Voraussetzungen / Build Tools
|https://wiki.gnucash.org/wiki/Install_Build_Tools
|}
|}
[[Kategorie:Linux]]
[[Kategorie:Kompilieren]]
[[Kategorie:GnuCash]]

Aktuelle Version vom 31. Dezember 2019, 01:30 Uhr

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


Autotools Prüfen, ob Autotools installiert sind:

autoconf --version 

Wenn Autotools nicht installiert sind, dann installieren:

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

Make und CMake Prüfen, ob make und cmake installiert sind:

make --version
cmake --version

Wenn nicht installiert, dann installieren:

# apt install 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 Umgebungsvariablen im Userkontext des Users, der den Build-Vorgang ausführt, 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

Nicht vergessen: Google Test Umgebungsvariablen setzen

Nicht vergessen: Bestehende Installation vorhanden? 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=/usr/local ../gnucash-3.x 
                           # This will install in the /usr/local directory.
make                       # builds the program and associated libraries

Hinweis: Build-Dateien für spätere Deinstallation aufheben.

Gnucash installieren

Installation muss mit Root-Rechten ausgeführt werden:

# cd ~/dev/gnucash-3.x-build
# make install               # to install to /usr/local or /opt admin privileges are required.

Gnucash deinstallieren

Deinstallation muss mit Root-Rechten ausgeführt werden:

# cd ~/dev/gnucash-3.x-build
# make uninstall             # to uninstall from /usr/local or /opt admin privileges are required.

Troubleshooting

Kursabfrage

Siehe GnuCash Online-Kursabfragen

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