Anfang des Inhaltsbereichs

Diese Grafik wird im zugehörigen Text erklärt Erläuterungen zum Ablauf Dokument im Navigationsbaum lokalisieren

Zunächst werden alle benötigten Dateien ermittelt:

Die Beschreibungsdatei sys/desc/hello.lnk wird anhand der Dateiendung .lnk als die Beschreibung eines ausführbaren Programms erkannt. Die Beschreibung enthält nur eine einzige Datei:

:SAPDB/HelloWorld.c

Der Doppelpunkt steht für das Verzeichnis mit den Moduldateien sys/src .

 

Die Moduldatei sys/src/SAPDB/HelloWorld.c wird anhand der Dateiendung .c als eine Moduldatei erkannt, die mit dem C-Kompilierer übersetzt werden muß. Die von dieser Moduldatei benötigten Include-Dateien werden in der Beschreibungsdatei sys/desc/SAPDB.com aufgeführt:

HelloWorld.c inc=:SAPDB/HelloWorld.h

In dieser Zeile können weitere Optionen für den Kompilierer stehen.

 

Die Include-Datei sys/src/SAPDB/HelloWorld.h benötigt keine weiteren Dateien, ansonsten müßten diese Abhängigkeiten ebenfalls in SAPDB.com eingetragen werden.

 

Nach der Ermittlung der benötigten Dateien wird jede dieser Dateien aktualisiert:

HelloWorld.h

HelloWorld.c fast

hello.lnk fast

Diese werden aus dem Entwicklungsbereich ( Allgemeine Verzeichnisstruktur) in ein entsprechendes Unterverzeichnis sys/wrk/incl kopiert, in diesem Fall nach sys/wrk/inl/SAPDB/HelloWorld.h .

Dateinamen in #include-Anweisungen sind deshalb immer relativ zu sys/wrk/incl anzugeben.

 

HelloWorld.h

HelloWorld.c fast

hello.lnk fast

Diese werden mit Hilfe des C-Kompilierers in Objektdateien übersetzt.

Objektdateien können in drei Versionen ( VMAKE-Versionen) erzeugt werden:

* fast: mit Optimierung

* quick: mit Assertions

* slow: mit Assertions und Traceausgaben

In diesem Fall wird die erzeugte Datei nach sys/wrk/fast/obj/SAPDB/HelloWorld.o geschrieben.

Auch unter Windows NT(tm) erhalten Objektdateien die Dateiendung .o .

Zum Übersetzen wird die Quelldatei in das Verzeichnis sys/wrk/fast/tmp kopiert. Alle Zwischenergebnisse (diese fallen insbesondere bei PASCAL-Quellen an) werden in diesem Verzeichnis erzeugt und können beim Auftreten eines Fehlers dort angesehen werden.

 

HelloWorld.h

HelloWorld.c fast

hello.lnk fast

Diese werden gelinkt und nach usr/pgm kopiert.

Unter UNIX wird dabei usr/pgm/hello.f erzeugt und darauf ein Link im Dateisystem unter usr/pgm/hello eingetragen.

Unter Windows NT wird die Datei usr\pgm\hello.exe.f erzeugt und nach usr\pgm\hello.exe kopiert.

Ende des Inhaltsbereichs