ubuntuusers.de

Compiler

Mit einem "Compiler" werden die für Menschen lesbaren Quellcode-Dateien in maschinenlesbaren Objektcode übersetzt. Da aber ein Programm in der Regel aus mehreren Quellcode-Dateien zusammengebaut wird, kann das Erstellen eines Programms von Hand eine ziemlich langwierige und fehleranfällige Arbeit werden. Um diesen Prozess zu automatisieren und zu unterstützen, werden "Buildsysteme" eingesetzt.

Informationen und einzelne Programme aus diesen beiden Gruppen werden in diesem Artikel aufgeführt.

Compiler

Die Pakete, die die jeweiligen Compiler enthalten, werden in der folgenden Liste fett in Klammern angegeben:

  • GNU Compiler Collection (GCC) - Compiler für Ada (gnat), C (gcc), C++ (g++), ObjectiveC (gobjc), Fortran (gfortran), Java (gcj) und Go (gccgo).

  • Im GNU-Projekt enthalten: D (gdc), Eiffel (smarteiffel), Lisp (gcl), Pascal (gpc) und Prolog (gprolog)

  • fpc - Compiler für Free Pascal

  • Glasgow Haskell Compiler - Compiler für die funktionale Programmiersprache Haskell (ghc)

  • iconc - Compiler für Programmiersprache Icon 🇬🇧

  • OpenCOBOL - freier Compiler für COBOL

  • Java - Der Compiler für Java-Programme heißt versionsübergreifend javac

  • Nuitka - ein Compiler für Python-Programme

Buildsysteme

  • aap - Verwendet Signaturen, um Probleme mit Zeitstempeln zu beheben. Unterstützt Python Skripte, zur Beschreibung des Build-Prozesses.

  • autoconf - Zur Erzeugung automatischer Makefiles mit configure

  • Make - Das traditionelle Buildsystem

  • cmake - Cross-platform Make 🇬🇧

  • scons - Ein Ersatz für make, der eine Reihe von erweiterten Möglichkeiten wie automatische Abhängigkeitsgenerierung bereitstellt. Das System baut auf Python auf.

Eine gute Übersicht über existierende Buildsysteme gibt es beim A-A-P Projekt 🇬🇧.

Hilfreiche Werkzeuge

  • acovea - Analyse von Compiler-Optionen mit Hilfe evolutionärer Optimierungsalgorithmen

  • ccache - Cache für Compiler-Resultate, um das erneute Kompilieren zu beschleunigen

  • cmix - Werkzeug, das versucht, gegebenen C-Code auf Geschwindigkeit zur Laufzeit hin zu beschleunigen

  • distcc - Verteilt den Buildprozess auf verschiedene Computer, um Zeit beim Kompilieren sparen

  • qmtest - Ein Test-Framework zum Qualitätsmanagement von CodeSourcery 🇬🇧

Diese Revision wurde am 6. Februar 2020 17:33 von Heinrich_Schwietering erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Programmierung, Übersicht