Benutzer-Werkzeuge

Webseiten-Werkzeuge


k1:k1.2_alt:k1.2.3:start

1.2.3 Installation über SVN

Die Anwendung Subversion (SVN) ist ein Versionsverwaltungsystem für Software. Sie können es zur Vorbereitung der Installation von neuer Software nutzen. Auf den Seiten von http://wiki.ubuntuusers.de/subversion wird SVN so beschrieben:

Viele Entwickler bieten die Möglichkeit, ihre Software über Subversion (SVN) zu nutzen. Dabei wird im Prinzip nichts anderes gemacht, als die Software via SVN herunterzuladen und sie für das Kompilieren abzulegen. Vorteil dabei ist, dass man so ganz einfach den einmal heruntergeladenen Quellcode über SVN aktualisieren kann, um dann eine neue Version der Software zu kompilieren und zu installieren.

Informationen zu Gambas und SVN finden Sie unter http://gambasdoc.org/help/howto/svn?view.

  • Am Ende des Kapitels werden Ihnen zwei Projekte vorgestellt, mit deren Hilfe Sie Gambas3 über SVN installieren (Skript) oder stets eine aktuelle Version über ein Update nutzen (Gambas-Programm).

1.2.3.1 Vorbereitungen

Überprüfen Sie, ob der Subversion-Kommandozeilen-Client svn auf Ihrem System installiert ist:

hans@linux:~$ svn 
Die Anwendung »svn« ist momentan nicht installiert.  Sie können sie durch folgende Eingabe installieren: 
sudo apt-get install subversion

Sie installieren das Programm subversion mit folgendem Befehl:

hans@linux:~$ sudo apt-get install subversion 
[sudo] password for hans: 
Paketlisten werden gelesen... Fertig 
Abhängigkeitsbaum wird aufgebaut 
...     
hans@linux:~$

Informieren Sie sich über den Subversion-Kommandozeilen-Client svn mit:

hans@linux:~$ svn help 
  • Stellen Sie sicher, dass Sie bereits die richtigen Entwickler-Pakete für Gambas installiert haben!
  • Auf http://gambasdoc.org/help/install?en&view finden Sie eine Übersicht zu den benötigten Programmen und Bibliotheken.

Diese Pakete aus der Übersicht auf http://gambas.sourceforge.net/en/main.html müssen zum Beispiel für Ubuntu > 11.10 alle vorher installiert werden, wenn Sie Gambas zum ersten Mal installieren und einsetzen wollen:

sudo apt-get install build-essential autoconf libbz2-dev libfbclient2 libmysqlclient-dev \ 
  unixodbc-dev libpq-dev libsqlite0-dev libsqlite3-dev libgtk2.0-dev libldap2-dev libcurl4-gnutls-dev \ 
  libgtkglext1-dev libpcre3-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libsage-dev \ 
  libxml2-dev libxslt1-dev libbonobo2-dev libcos4-dev libomniorb4-dev librsvg2-dev libpoppler-dev \ 
  libpoppler-glib-dev libasound2-dev libesd0-dev libdirectfb-dev libaa1-dev libxtst-dev libffi-dev \ 
  kdelibs5-dev firebird2.1-dev libqt4-dev libglew1.5-dev libimlib2-dev libv4l-dev libsdl-ttf2.0-dev \ 
  libgnome-keyring-dev libgdk-pixbuf2.0-dev linux-libc-dev libgsl0-dev

1.2.3.2 Download Revision

SVN stellt immer die neueste Revision sowie alle früheren Revisionen aller Gambas-Versionen zum Download bereit, von denen man über die Kommandozeile eine beliebige Version herunterladen kann. Eine Revision bezeichnet man auch als „Snapshot“.

Für den Download der aktuellen Revision von Gambas3 (…/trunk) vom Server wird folgender Befehl benötigt, wobei Sie den Namen für das Zielverzeichnis auf Ihrem PC – hier …/gb3_trunk – frei wählen können. Das Zielverzeichnis wird automatisch angelegt.

$ svn checkout QUELLE ZIEL 
$ svn checkout https://gambas.svn.sourceforge.net/svnroot/gambas/gambas/trunk/ $HOME/gb3_trunk
…
Ausgecheckt, Revision 4495.
$

Der Download startet nach wenigen Sekunden und der erste Download wird etwas dauern, weil jede Datei der Revision heruntergeladen werden muss. Bei zukünftigen Aktualisierungen werden nur geänderte oder neue Dateien geladen sowie nicht mehr benötigte Dateien gelöscht.

1.2.3.3 Installation

Führen Sie anschließend nacheinander diese 5 Befehle in einem Terminal aus:

  1. $ cd ~/gb3_trunk
  2. $ ./reconf-all
  3. $ ./configure -C
  4. $ make
  5. $ sudo make install

Erläuterungen:

  • Zuerst wechseln Sie in das Verzeichnis, in dem der Quellcode der aktuellen Entwicklerversion von Gambas3 liegt.
  • Mit ./reconf-all wird das Konfigurationsskript generiert. Diesen Befehl müssen Sie ausführen, wenn Sie den Quellcode aus dem Subversion-Repository beziehen.
  • Die Anweisung ./configure -C analysiert das System und konfiguriert das Paket; es wird das configure-Skript erstellt und ausgeführt.
  • Das angelegte Makefile wird vom Programm make benutzt, um Gambas zu kompilieren – wenn es vorher keine Fehlermeldung gab.
  • Anschließend wird mit Root-Rechten – mit sudo make install – das Paket installiert.

Im Downloadbereich finden Sie ein Skript, mit dem Sie Gambas über SVN einfach installieren und sicher pflegen können.

1.2.3.4 Programmstart Gambas

Die aktuelle Entwicklerversion von Gambas3 starten Sie nach der erfolgreichen Installation mit:

hans@linux:~$ /usr/local/bin/gambas3
hans@linux:~$ gambas3

Es ist von Vorteil, wenn Sie für Gambas3 einen Starter auf den Desktop legen, dem Sie ein passendes Icon spendieren:

Starter

Abbildung 1.2.3.1: Icon für den Gambas3-Starter

Erhalten Sie beim Starten von Gambas3 über ein Terminal oder beim Start eines Programms in der IDE die folgende Warnung, dann versucht das Programm die englische Übersetzung zu laden. Diese Meldung ist unkritisch.

gb.qt4: warning: unable to load Qt translation: en_US.UTF-8

1.2.3.5 Programmpflege

Die Revisionsnummer der auf Ihrem Rechner lokal vorhandenen Gambas3-Revision erfahren Sie so:

hans@linux:~$ cd /home/gb3_trunk
hans@linux:~/gb3_trunk$ svn info
Pfad: .
URL: https://gambas.svn.sourceforge.net/svnroot/gambas/gambas/trunk
Basis des Projektarchivs: https://gambas.svn.sourceforge.net/svnroot/gambas
UUID des Projektarchivs: 96304659-1d19-0410-acd0-aead272a8bd5
Revision: 4495
Knotentyp: Verzeichnis
Plan: normal
Letzter Autor: rmorgan62
Letzte geänderte Rev: 4495
Letztes Änderungsdatum: 2012-02-21 08:50:48 +0100 (Di, 21. Feb 2012)

hans@asrock:~/gb3_trunk$

Mit der Option -r und dem Revisionsparameter HEAD holen Sie sich Informationen über die letzte Revision von Gambas3 im Projektarchiv auf dem Projekt-Server:

hans@linux:~$ cd $HOME/gb3_trunk
hans@linux:~/gb3_trunk$ svn info -r HEAD
Pfad: trunk
URL: https://gambas.svn.sourceforge.net/svnroot/gambas/gambas/trunk
Basis des Projektarchivs: https://gambas.svn.sourceforge.net/svnroot/gambas
UUID des Projektarchivs: 96304659-1d19-0410-acd0-aead272a8bd5
Revision: 4536
Knotentyp: Verzeichnis
Letzter Autor: gambas
Letzte geänderte Rev: 4536
Letztes Änderungsdatum: 2012-03-06 02:50:41 +0100 (Di, 06. Mär 2012)
hans@linux:~/gb3_trunk$

Unterscheiden sich die Nummern der Revisionen lokal und auf dem Server, dann lohnt ein Update von Gambas3. Dazu wechseln Sie in den Ordner, in dem der Quellcode liegt und führen ein Update aus:

hans@linux:~$ cd $HOME/gb3_trunk
hans@linux:~/gb3_trunk$ svn update
U    app/src/gambas3/.project
U    app/src/gambas3/support.txt
D    app/src/gambas3/img/logo/icon-background.png
D    app/src/gambas3/img/logo/browser_gnome.png
...
A    gb.gsl/Test/test/.hidden
...
U    examples/examples/Drawing/Painting/.project
Aktualisiert zu Revision 4536.
hans@linux:~/gb3_trunk$

Die Buchstaben A, D, U, C, G und E am Anfang jeder Zeile haben dabei folgende Bedeutung:

A Added hinzugefügt D Deleted entfernt U Updated aktualisiert C Conflict Konflikt erkannt G Merged zusammengeführt E Existed existierte

Einzelheiten zur Option update finden Sie in der Hilfe zu SVN-Update:

$ svn help update

Nach dem Update können Sie die neueste Revision von Gambas3 installieren:

  1. $ cd ~/gb3_trunk
  2. $ ./reconf-all
  3. $ ./configure -C
  4. $ make
  5. $ sudo make install

Im Kapitel 1.2.6 Updates, wird das Gambas-Programm svn zur komfortablen Programmpflege bereitgestellt.

1.2.3.6 Release Candidates

Auf der Projektseite von Gambas wurden vor der offiziellen Freigabe von Gambas 3.0 neben der Entwicklerversion auch Release Candidates (RC) mit „Download Gambas 3.0 RCx“ angeboten. Die Release Candidates werden willkürlich bestimmt. Es sind stabilere Versionen gewesen, die potentielle erste offizielle Freigaben von Gambas3 waren. Nach einigen größeren Bugfixes und Verbesserungen entschieden sich die Entwickler, eine aktuelle Revision als neuen RC freizugeben. Somit sind die Release Candidates nur ausgewählte Revisionen der Entwickler-Version. Die Installation unterscheidet sich nicht von der Installation einer aktuellen Revision.

Protokoll einer Installation:

hans@linux:~/gb3_trunk$ ./reconf-all 
libtoolize: putting auxiliary files in `.'. 
libtoolize: copying file `./ltmain.sh' 
libtoolize: You should add the contents of the following files to `aclocal.m4': 
…
autoreconf: configure.ac: adding subdirectory gb.qt4 to autoreconf 
autoreconf: Entering directory `gb.qt4' 
libtoolize: putting auxiliary files in `.'. 
libtoolize: copying file `./config.guess' 
libtoolize: copying file `./config.sub' 
libtoolize: copying file `./install-sh' 
libtoolize: copying file `./ltmain.sh' 
autoreconf: Leaving directory `gb.qt4' 
…
configure.ac:48: installing `./config.sub' 
configure.ac:44: installing `./install-sh' 
autoreconf: Leaving directory `.' 
hans@linux:~/gambas3$ 

hans@linux:~/gb3_trunk$ ./configure -C
…
|| 
|| ALL COMPONENTS WILL BE COMPILED 
|| 
hans@linux:~/gb3_trunk$

hans@linux:~/gb3_trunk$ make
…
Making all in . 
make[2]: Betrete Verzeichnis '/home/hans/gambas3' 
make[2]: Verlasse Verzeichnis '/home/hans/gambas3' 
make[1]: Verlasse Verzeichnis '/home/hans/gambas3' 
hans@linux:~/gambas3$ 

hans@linux:~/gb3_trunk$ sudo make install
…
Making install in . 
make[1]: Betrete Verzeichnis '/home/hans/gambas3' 
make[2]: Betrete Verzeichnis '/home/hans/gambas3' 
make[2]: Für das Ziel »install-data-am« ist nichts zu tun. 
make[2]: Verlasse Verzeichnis '/home/hans/gambas3' 
make[1]: Verlasse Verzeichnis '/home/hans/gambas3' 
hans@linux:~/gambas3$ 

1.2.3.7* Änderung Installationsverzeichnis von GB3 über SVN

Nach dem letzten Update von Gamba3 mit SVN erschien das:

hans@linux:~$ gambas3
ERROR: #2: Cannot load class 'TableView': Cannot load parent class:
Cannot load class 'GridView': Unable to load class file
hans@linux:~$

und der Schreck war groß: Gambas3 startet nicht wie gewohnt.

Was nun - was tun?

Es existieren zwei mögliche Gründe in der jüngsten Geschichte von Gambas für diesen Ausfall:

1. Die Änderung des Installationsprefix der trunk/-Version von /usr/local/ auf /usr/ von Revision 5227

Am 12. Oktober 2012 schrieb Minisini in etwa folgendes: — Hi, der gewöhnliche Installationspfad von Gambas, wenn es von /trunk kompiliert wird, ist nun '/usr' und nicht laenger '/usr/local'. Aus diesem Grunde muss man alles, was mit Gambas 3 zusammenhängt deinstallieren, bevor man eine neuere Version kompiliert und installiert, sonst kann es zu zufälligen Abstürzen kommen. Verzeiht bitte diese Unannehmlichkeit… —

2. Die neue gb.gui.base-Komponente von Revision 5251

Am 27. Oktober wurden Klassen aus den graphischen Komponenten gb.gtk und gb.qt4 in eine neue gb.gui.base-Komponente ausgelagert, um dort komplett in Gambas implementiert zu werden. Laut Eintrag im ChangeLog sind dies „TreeView, ListView, ColumnView, IconView, Action, ScrollArea“. Die neue Komponente muss, wie jede andere, erst für den Bau konfiguriert werden, mittels ./reconf-all. Nach der Installation sollten die fehlenden Klassen wieder vorhanden sein.

Treten beide Probleme gemeinsam auf, kann es leicht unübersichtlich werden. Die folgende Lösung ist sicher:

Schritt 1:
De-Installation von GB nach einer Installation über SVN: Wenn der Installationspräfix /usr ist oder /usr/local (bisher Standard), dann löschen Sie jedes Verzeichnis - eines nach dem anderen:

$ sudo rm -f /usr/local/bin/gba3 /usr/local/bin/gbc3 /usr/local/bin/gbi3 /usr/local/bin/gbr3 /usr/local/bin/gbx3 /usr/local/bin/gbs3 /usr/local/bin/gbw3
$ sudo rm -rf /usr/local/lib/gambas3
$ sudo rm -rf /usr/local/share/gambas3

Schritt 2:
Löschen Sie den Ordner $HOME/trunk. Beim Autor ist das zum Beispiel /home/hans/gb3_trunk.

Schritt 3:
Installieren Sie Gambas3 über SVN:

$ svn checkout https://gambas.svn.sourceforge.net/svnroot/gambas/gambas/trunk/ $HOME/gb3_trunk
$ cd ~/gb3_trunk
$ ./reconf-all
$ ./configure -C
$ make
$ sudo make install

Gambas starten Sie dann wie bisher - zum Beispiel in der Konsole mit gambas3 oder mit einem Starter, der als Befehl gambas3 enthält.

1.2.3.7 Download

Die Website verwendet zwei temporäre Session-Cookies. Diese technisch notwendigen Cookies werden gelöscht, wenn der Web-Browser geschlossen wird! Informationen zu Cookies erhalten Sie in der Datenschutzerklärung.
k1/k1.2_alt/k1.2.3/start.txt · Zuletzt geändert: 20.06.2016 (Externe Bearbeitung)

Seiten-Werkzeuge