Zurück Vor +Ebene Home Inhalt Index Hilfe

Compiler

Compiler, übersetzt Programmcode einer höheren Programmiersprache ( Quellcode) vor Ausführung des Programms in Maschinensprache ( Objektcode). Erkennt Fehler in Syntax und Anordnung zusammenhängender Befehle.
Datenstrukturen werden auf Fehler überprüft, jedoch noch nicht im Speicher verankert. Verschiedene Programmteile (Funktionen, Unterroutinen) können als unabhängige Einheiten übersetzt werden.

Die Zusammenfügung einzelner Programmteile übernimmt der Linker  (Binder), verknüpft einzelne, bereits compilierte Programmteile ( Objektmodule) mit den darin definierten Datenstrukturen zu einem zusammenhängenden, ausführbaren Programm.
 
Neben dem Zusammenfügen verschiedener Programmteile bindet der Linker meist zusätzlich sogenannte Bibliotheksroutinen in das Programm ein. Sie enthalten vordefinierte Funktionen und Unteroutinen (z.B. für Ein- und Ausgabeoperationen), die häufig benötigt werden. Der Benutzer kann sich selbst Bibliotheken (Libraries) erstellen.
 
In vielen Fällen werden Compiler und Linker zu einer Einheit zusammengefaßt. Bei erfolgreicher Compilation wird automatisch der Linker aufgerufen. Sind Fehler aufgetreten, so unterbleibt der Aufruf des Linkers. Das automatische Linken kann dabei auf Wunsch abgeschaltet werden.
 
Gängige Compiler unter UNIX sind f77 (FORTRAN), cc (C), g++ (Gnu-C++). Sie enthalten bereits den Linker, der jedoch über Compiler-Flags  abgeschaltet werden kann:

f77 -c prog.f
Compiliert prog.f ohne Aufruf des Linkers
cc prog1.c prog2.c
Compiliert die Mdule prog1.c und prog2.c und linkt sie zusammen

Zurück Vor +Ebene Home Inhalt Index Hilfe

Copyright Verlag Harri Deutsch AG  Stöcker DeskTop Mathematik