next up previous
Nächste Seite: Pflichtprozeduren Aufwärts: Der Library-Linker (M2LibLink) Vorherige Seite: Namens-Konventionen

Sonstige Konventionen

Für die Erstellung des Resident-Headers4.2benötigt der Library-Linker neben den bereits bekannten Namen noch zusätzliche Informationen. Dies sind die Version und die Revision des Moduls sowie die Grösse der zugehörigen Library-Struktur. Alle drei müssen als ganzzahlige Konstanten definiert werden. Dabei gehören version und baseSize sinnvollerweise ins Definitionsmodul und revision in die Implementation.

Die Version sollte jeweils den unterliegenden Amiga-Bibliotheken entsprechen, d.h., für Kickstart 1.2 sollte die Version 33, für Kickstart 1.3 die Version 34 und für Kickstart 2.0 Version 37 verwendet werden.

Die eigene Library-Struktur muss immer als RECORD deklariert werden und als erstes Element eine Library-Struktur des Moduls ExecD enthalten. Daran können sich beliebige eigene globale Variablen anschliessen. Alle globalen Variablen sollten innerhalb dieser Struktur angelegt werden.

Werden die verlangten Konstanten nicht wie verlangt deklariert, bricht der Linker mit einer Fehlermeldung ab.


\begin{note}
Der Library-Linker ben\uml {o}tigt zum Arbeiten unbedingt die zugeh...
...chen Programmz\uml {a}hler und Quelltext-Position
nicht korrekt sind!
\end{note}


\begin{example}
\begin{verbatim}DEFINITION MODULE MyTestLib;FROM ExecD IMPOR...
...TestLib;
...
CONST
revision = 10; (* Pflicht! *)
...\end{verbatim}\end{example}



Claudio Nieder 2000-11-12