GnuCash 2.6 kompilieren (Debian): Unterschied zwischen den Versionen

Aus MattWiki
K (Matt verschob die Seite GnuCash kompilieren (Debian) nach GnuCash 2.6 kompilieren (Debian), ohne dabei eine Weiterleitung anzulegen)
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
Anleitung, um GnuCash unter Debian aus dem Quelltext zu kompilieren.
Anleitung, um eine Stable-Version von Gnucash unter Debian GNU/Linux aus dem Quellcode zu kompilieren. Diese Anleitung bezieht sich auf:
* Gnucash 2.6.5 Stable
* Debian Wheezy 7.8


Diese Anleitung bezieht sich auf: GnuCash 2.6.3 Stable auf Debian Wheezy 7.5


Quellen für diese Anleitung:
Quellen für diese Anleitung:
* http://wiki.gnucash.org/wiki/Building
* http://wiki.gnucash.org/wiki/Building
* http://verahill.blogspot.de/2014/01/542-gnucash-26-on-debian-wheezy-by.html
* http://wiki.gnucash.org/wiki/Dependencies




== Voraussetzungen ==
== Installation Kompilierumgebung ==
Benötigte Softwarepakete für Kompiliervorgang installieren


# apt-get install build-essential
Kompiler und Hilfsprogramme installieren:


Diese Zeile nochmal überdenken, da hier viel Schrott installiert wird. Evtl. die Dependencies von GnuCash manuell installieren? → vgl. GnuCash-Wiki zum Thema "Dependencies"
# apt-get install gcc intltool pkg-config


# aptitude build-dep gnucash
Notwendige Entwicklungspakete installieren (Dabei werden auch Pakete für den Betrieb von Gnucash installiert):


Auf jeden Fall benötigt (Weil vom Configure-Skript geprüft):
# apt-get install libglib2.0-dev libgtk2.0-dev guile-2.0-dev libxslt1-dev xsltproc libgnomecanvas2-dev libgoffice-0.8-dev libwebkit-dev


# apt-get install libsxlt-dev libdbd-mysql xsltproc checkinstall swig guile-2.0-libs
Einer der drei SQL-Backends wird benötigt:


# apt-get install libdbd-mysql      # oder
# apt-get install libdbd-pgsql      # oder
# apt-get install libdbd-sqlite3 


Noch zu überarbeiten → Wird das noch benötigt, oder reichen die beiden o. g. Zeilen aus?:  
Sonstige benötigte Pakete:


Benötigte Softwarepakete für Betrieb von GnuCash
  # apt-get install libfinance-quote-perl      # Onlineabfrage der Kurse:
  # apt-get install guile-2.0-dev swig
autoconf automake intltool xsltproc checkinstall
libglib2.0-dev libgtk2.0-dev guile-2.0-libs libgnomecanvas2-dev libgoffice-0.8-dev  libxml2-dev libxslt-dev libwebkit-dev  libdbd-mysql libdbi-dev libofx-dev python-dev
# apt-get install build-essential libglib2.0-dev libgtk2.0-dev guile-2.0-libs libgnomecanvas2-dev libgoffice-0.8-dev guile-2.0-dev libxml2-dev libxslt-dev swig libwebkit-dev libdbd-mysql libdbi-dev libofx-dev python-dev
# apt-get install autoconf automake intltool xsltproc checkinstall




== Quellen herunterladen und einrichten ==
== Quellcode beschaffen ==
'''Wichtig:''' Quellen von Sourceforge verwenden, nicht die Tarballs von GitHub. Warum? Kein Plan.


mkdir ~/tmp/gnucash -p
Mögliche Quellen:
cd ~/tmp/gnucash
# Stable Quellcode von Sourceforge &rarr% Enthalten Configure Skript
wget http://downloads.sourceforge.net/sourceforge/gnucash/gnucash-2.x.x.tar.bz2
# Quellcode von Git &rarr; Configure Skript mit <code>./autogen.sh</code> aufbauen
tar xvf gnucash-2.x.x.tar.bz2
# Tarballs von Github nicht verwenden
cd gnucash-2.x.x/


Falls man Source- und Build-Daten im gleichen Verzeichnis speichern will:


  ./configure
  $ mkdir ~/tmp
$ cd ~/tmp
$ wget wget http://downloads.sourceforge.net/sourceforge/gnucash/gnucash-2.x.x.tar.bz2
$ tar xvf gnucash-2.x.x.tar.bz2


Falls Source- und Build-Daten in unterschiedlichen Verzeichnissen gespeichert werden sollen: So wird das Build-Verzeichnis angegeben:


  ./configure --prefix=/home/user/build/gnucash-2.x.x       # Alternativ: --prefix=/opt/gnucash-build
== Kompilieren ==
Als Anwender ausführen:
 
  $ ./configure --prefix=/opt/gnucash-2.x.x   # /opt verwenden, um vom Rest des Systems zu trennen


Die Ausgabe von <code>./configure</code> sieht etwa so aus:
Die Ausgabe von <code>./configure</code> sieht etwa so aus:
Zeile 60: Zeile 60:
   CFLAGS ............... :  -Wdeclaration-after-statement -g -O2 -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations  -Wno-unused
   CFLAGS ............... :  -Wdeclaration-after-statement -g -O2 -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations  -Wno-unused
   LDFLAGS .............. :  
   LDFLAGS .............. :  
   prefix................ : /home/user/build/gnucash-2.x.x
   prefix................ : /opt/gnucash-2.x.x
 
 
Als nächstes:
 
$ make
 
Als Root ausführen:
 
# make install
 
 
== Ausführen ==
Als Anwender ausführen:
 
$ /opt/gnucash-2.x.x/bin/gnucash
 
 
== Verknüpfung im Anwendungsmenü erstellen ==
 
 
 


== Kompilieren ==


make




=== Direkt installieren ===
=== Debian Package erstellen (Einfach) ===
Root-User notwendig:
Voraussetzung: Checkinstall


make install                          # Startleistenverknüpfungen werden nicht in allen Fällen erstellt (?)
Statt
                                      # Unklar, ob dies am make install oder am "--prefix=xxx" liegt


# make install


=== Debian Package erstellen ===
führt man folgendes aus:
Root-User notwendig?


  checkinstall --install=no
  # checkinstall --install=no
  dpkg -i gnucash_2.6.0-1_amd64.deb
  # dpkg -i gnucash_2.6.0-1_amd64.deb





Version vom 20. Januar 2015, 03:04 Uhr

Anleitung, um eine Stable-Version von Gnucash unter Debian GNU/Linux aus dem Quellcode zu kompilieren. Diese Anleitung bezieht sich auf:

  • Gnucash 2.6.5 Stable
  • Debian Wheezy 7.8


Quellen für diese Anleitung:


Installation Kompilierumgebung

Kompiler und Hilfsprogramme installieren:

# apt-get install gcc intltool pkg-config

Notwendige Entwicklungspakete installieren (Dabei werden auch Pakete für den Betrieb von Gnucash installiert):

# apt-get install libglib2.0-dev libgtk2.0-dev guile-2.0-dev libxslt1-dev xsltproc libgnomecanvas2-dev libgoffice-0.8-dev libwebkit-dev 

Einer der drei SQL-Backends wird benötigt:

# apt-get install libdbd-mysql       # oder
# apt-get install libdbd-pgsql       # oder
# apt-get install libdbd-sqlite3  

Sonstige benötigte Pakete:

# apt-get install libfinance-quote-perl      # Onlineabfrage der Kurse:


Quellcode beschaffen

Mögliche Quellen:

  1. Stable Quellcode von Sourceforge &rarr% Enthalten Configure Skript
  2. Quellcode von Git → Configure Skript mit ./autogen.sh aufbauen
  3. Tarballs von Github nicht verwenden


$ mkdir ~/tmp
$ cd ~/tmp
$ wget wget http://downloads.sourceforge.net/sourceforge/gnucash/gnucash-2.x.x.tar.bz2 
$ tar xvf gnucash-2.x.x.tar.bz2


Kompilieren

Als Anwender ausführen:

$ ./configure --prefix=/opt/gnucash-2.x.x   # /opt verwenden, um vom Rest des Systems zu trennen

Die Ausgabe von ./configure sieht etwa so aus:

 Options detected/selected
 -------------------------
 gnucash version ...... : 2.x.x
 Build for host ....... : x86_64-unknown-linux-gnu
 Optional components... :  dbi ofx
 Extra Warnings ....... :  -Wdeclaration-after-statement
 CPPFLAGS ............. : 
 CFLAGS ............... :  -Wdeclaration-after-statement -g -O2 -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations  -Wno-unused
 LDFLAGS .............. : 
 prefix................ : /opt/gnucash-2.x.x


Als nächstes:

$ make

Als Root ausführen:

# make install


Ausführen

Als Anwender ausführen:

$ /opt/gnucash-2.x.x/bin/gnucash


Verknüpfung im Anwendungsmenü erstellen

Debian Package erstellen (Einfach)

Voraussetzung: Checkinstall

Statt

# make install

führt man folgendes aus:

# checkinstall --install=no
# dpkg -i gnucash_2.6.0-1_amd64.deb


Fehlerbehandlung

libgnc-gnome.so.0

Fehlerursache: GnuCash startet mit der erstellten Verknüpfung nicht

Diagnose: GnuCash direkt aus dem Terminal starten und Meldungen überprüfen. Falls eine Meldung erscheint, dass libgnc-gnome.so.0 fehlt folgendes tun:

Lösung:

# nano /etc/ld.so.conf 

Zeile einfügen:

include /usr/local/lib

Anschließend ausführen:

# ldconfig

Kursabfrage / Finance::Quote

Fehlerursache: Kurse lassen sich nicht abrufen unter Werkzeuge → Kurs-Datenbank → Button "Kurse abrufen"

Diagnose: Im Wertpapiereditor unter Wekkzeuge → Wertpapier-Editor → Bearbeiten erscheint die Warnung "Modul Finance::Quote ist nicht korrekt installiert."

Lösung: Einrichtungsskript für Finance-Quote ausführen:

# /usr/local/bin/gnc-fq-update