Atari Logo
Atari Computer

Hauptseite -
Welches System? -
Hardware -
Software -
Emulatoren -
Internet
MausNet
Programmieren
Verweise
Über

C

Home modulares Comilieren cookie.prj Die ANSI Bibliotheken

12.7 makefile

Für Sozobon und GCC kann das Tool make benutzt werden. Da make per default nach der Datei makefile sucht, bekommt unser Makefile auch diesen Namen.

In den ersten zwei Zeilen wird ein Makro definiert. Die Zeile mit dem also wird die erste Zeile auskommentiert. Für Sozobon ist die erste Definition zuständig. Diese Makro legt fest, welches Programm für das Übersetzen aufzurufen ist. Auch für das Linken des Programms wird cc bzw. gcc aufgerufen. Dieses Programm erkennt anhand der Parameter selbstständig, ob der eigentliche Compiler oder der Linker zu starten ist.

In einem Makefile gibt man eine Datei an, gefolgt von einem Doppelpunkt und den Dateien, von dem diese Datei abhängt. Darunter steht die Aktion, die ausgeführt werden soll. Jede Aktion beginnt mit einem Tabulator! Wenn der Editor stattdessen Leerzeichen einfügt, funktioniert die Makedatei nicht!

Make sucht nach der ersten Regel und versucht sie auszuführen. Das wäre das komplette Programm, das natürlich von den Objektdateien aus unseren Quellen abhängt. Sind die Objekte neuer, wird die Aktion ausgeführt und das Programm neu gelinkt. Da für die Objekte auch wieder entsprechende Regeln definiert sind, werden auch diese überprpüft. Eine Objektdatei ist natürlich von der Quelldatei und auch von den benutzen Includedateien abhängig. Immer wenn sich die Schnittstelle zu dem Modul, also die Datentypen und Funktionen ändern, ändert sich die Includedatei. Damit ist diese neuer als die Quelle und die Quelle wird neu übersetzt. Damit wir garantiert, daß unsere veränderten Definitionen benutzt werden.

Da in einem Makefile die Aktion explizit angegeben wird, bietet es noch mehr Möglichkeiten als die Prrojektdatei von TC/PC. Es lassen sich beliebige Abhängigkeiten und dazu beliebige Aktionen definieren.



Home modulares Comilieren cookie.prj Die ANSI Bibliotheken


Best viewed with any browser English version not yet available.

Änderungen und Irrtümer vorbehalten. Letzte Änderung:
14 September 2001.
Home - Mail an den Webmaster - Impressum