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 muss. 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üssten diese Abhängigkeiten ebenfalls in SAPDB.com eingetragen werden.
Nach der Ermittlung der benötigten Dateien wird jede dieser Dateien aktualisiert
· Include-Dateien
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.
· C-Quellen
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.ogeschrieben.
Auch unter Microsoft Windows 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.
· Ausführbare Programme
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 Microsoft Windows wird die Datei usr\pgm\hello.exe.f erzeugt und nach usr\pgm\hello.exe kopiert.