[ Inhalt ] [ Index ] (Auto-)konfiguration der Makefiles Referenzteil Referenzteil

Installation

  Die Distribution der gesamten VDM Klassenbibliothek in seiner Entwicklerinstallation erfolgt in der Regel durch eine mit GNU-zip (gzip) gepackten und durch den Tape-Archiver tar archivierten Datei mit dem Namen flatport.tgz. Nach Entpacken der Bibliothek gemäß der beiliegenden Informationsdatei, liegt eine Verzeichnisstruktur vor, welche die Erzeugung der Klassenbibliothek einschließlich seiner Tools erlaubt.

Zur Installation wird folgende Software auf dem System benötigt:

  1. Tape Archiver tar sowie gzip
  2. ANSI C Compiler(*)
  3. ANSI C++ Compiler(*)
  4. Lex und Yacc (oder kompatible wie flex, bison und andere)
  5. TCL Entwicklungspaket
  6. TK Entwicklungspaket

    Der Aufruf von make im Installationsverzeichnis ohne weitere Angaben gibt eine Hilfe über die Installationsoptionen aus. Die Installation unter SUN-OS erfordert die Eingabe von make SUNFLATBOOT, unter Linux-und anderen Systemen wird make FLATBOOT erwartet(*). Alle weiteren Informationen finden sich in der Informationsdatei README.

Die Tools der Klassenbibliothek basieren mittlerweile auf sich selbst, was bedeutet, daß auch der VDM Domaincompiler aus Elementen der VDM-Klassenbibliothek besteht, und daher einen existierenden Domaincompiler voraussetzt. Das Resultat des Domaincompilers ist C bzw. C++ Code, der als solches portabel ist. Die Erzeugung der Datei flatport.tgz, welche im übrigen auch durch das Makefile im Installationsverzeichnis erfolgen kann, führt vor der Generierung des Archivs die Umsetzung aller VDM-Bestandteile in portablen Hochsprachencode durch, der nach der Portierung auf das Zielsystem übersetzt und gelinkt wird, so daß hiernach auch der Domaincompiler verfügbar ist.

Das Informations- und Hilfesystem arbeitet mit einer Client-Server Struktur und setzt die Verfügbarkeit von TCP-Kommunikation in TCL voraus. Es wird daher insbesondere benötigt:

A.
TCL in der Minimalversion 7.5
B.
TK in der Miminalversion 4.1

Beta-Version von TCL 7.5 und TK 4.1 werden nicht unterstützt. Für den Fall, daß lediglich ältere Versionen auf dem Zielsystem verfügbar sind, wurde in sofern Vorsorge getragen, daß die sich Klassenbibliothek nach wie vor dennoch vollständig und funktionsfähig erzeugen läßt, jedoch ohne das lauffähige Informations- und Hilfesystem.

Dem Sonderfall, daß TCL in einer älteren Version auf dem System installiert ist(*), wird Rechnung getragen durch eine besondere Art der Nachonfiguration, mit einer separaten, zusätzlichen Installation des benötigen TCL Paketes. Die Vorgehensweise hierfür ist wie folgt:

     

  1. Installieren der Klassenbibliothek mittels FLATBOOT bzw. SUNFLATBOOT
  2. Setzen der Umgebungsvariable VDMROOT auf das Installationsverzeichnis und Hinzufügen von $VDMROOT:/bin zu der Umgebungsvariable PATH. Dies ist wichtig für die Ausführung von make prefixtcl an späterer Stelle, da der Domaincompiler für die Neuerzeugung des Datenbankmanagers verwendet wird.
  3. Installation von TCL 7.5 oder einer jüngeren Version in einem wahlfreien temporären Verzeichnis.
  4. Ausführen von configure im temporären Verzeichnis
  5. Editieren der Datei Makefile
  6. Verändern der Variable prefixdir im Makefile des TCL-Quellcodes, die per Vordefinition auf /usr/local gesetzt ist, auf ein anderes Zielverzeichnis, z.B. das Heimatverzeichnis des Benutzers, jedoch unter Beibehaltung der Endung /usr/local. Gültig wäre zum Beispiel /home/stud/wi/wi8980/usr/local
  7. Erzeugen von TCL durch Aufruf von make
  8. Installieren von TCL durch Aufruf von make INSTALL
  9. Wechsel in das Verzeichnis ./tools/g++vdmdbm/ ausgehend vom Installationsverzeichnis der Klassenbibliothek
  10. Eingabe von make prefixtcl
  11. Nachdem die Aufforderung ergeht, Eingabe des gleichen Pfades, in welchen prefixdir des Makefiles der TCL-Installation geändert wurde
  12. Anschließend Eingabe der TCL-Versionsnummer, der gesonderten Installation
  13. Sowie Eingabe von FLAT bzw. SUNFLAT als Ziel für die Neuerzeugung des Datenbankmanagers, nach Verlangen des Systems
  14. Eingabe von make INSTALL

Bei einer üblichen Installation einer geeigneten TCL Version im System erübrigt sich die vorstehende Installationsanweisung.

Die Makedatei im Installationsverzeichnis der VDM Klassenbibliothek wurde durch den Autor dieser Diplomarbeit um folgende vier Optionen erweitert:

  1. make clean

    Beseitigen allen Objekt- und Binärcodes sowie aller weiteren erzeugten Dateien. Die Neuerzeugung des Codes kann anschließend mit make FLATBOOT bzw. make SUNFLATBOOT vorgenommen werden. Eine vollständige Neuübersetzung durch Ausführung von make FLAT ist nicht mehr möglich, da auch der Domaincompiler gelöscht wird.

  2. make cleanport

    Säuberung nach vorstehend beschriebener Methode, sowie Erzeugen des Portierungsarchives flatport.tgz mit gesetzten Lese- und Schreibrechten als auch ohne jeglichen Objektcode.

  3. make unixclnt.tgz

    Erzeugen eines Archives, welches lediglich die Tools vdmdbm, vdmhelp und dbmc mit allen benötigten Dateien für das gleiche UNIX-Zielsystem enthält. Die Tools arbeiten lediglich als Clients und benötigen zum Betrieb den laufenden VDM Server vdmd auf gleicher oder einer anderen Maschine.

  4. make winclnt.tgz

    Generierung eines Archives, das die gleichen Tools wie unixclnt.tgz enthält, jedoch für die Zielsysteme Windows NT und Windows 95. Alle externen Programme sind bereits übersetzt, so daß keine weiteren Compiler benötigt werden, der Quellcode dieser Programme nebst Makefiles liegt bei. Das Archiv kann durch tar und gzip als auch durch Winzip entpackt werden. Zusätzlich benötigt wird die Binär- oder Quellcodedistribution von TCL 7.5 und TK 4.1 oder Nachfolgeversionen für 32-Bit Windows(*).

Die VDM Klassenbibliothek wurde neben zahlreichen Veränderungen durch diese Diplomarbeit um drei Programme ergänzt:

     

  1. vdmd - der VDM-Server
  2. dbmc - der VDM-Client
  3. vdmtest - der VDM Beispieltester

Der VDM-Server vdmd ist lediglich ein Softlink auf den konventionellen Datenbankmanager dbm. Der Dateiname der Datei bestimmt die Funktionsweise des Programms. Abgesehen von zusätzlichen Funktionen, ist der Aufruf des Datenbankmanagers mit dem Namen dbm zu 100% und in allen Funktionen mit der ursprünglichen Fassung kompatibel. Der VDM-Client als auch der VDM Beispieltester sind vollständig in TCL erstellt und kommen auch mit der Original TCL-Shell aus.

Die Aufrufsyntax dieser Programme als auch die geänderte Aufrufsyntax des Bibliotheksmanagers vdmdbm sowie Bibliotheksbrowsers vdmhelp ist in den Manual-Pages zu der Klassenbibliothek zu finden.


[ Inhalt ] [ Index ] (Auto-)konfiguration der Makefiles Referenzteil Referenzteil

VDM Class Library