Junior — Middle
Wie verläuft die Kompilierungsphase der Quelldateien in eine ausführbare Binärdatei unter Linux?
sobes.tech KI
Antwort von AI
Unter Linux durchläuft die Kompilierung von Quellcodedateien (z.B. in C oder C++) in eine ausführbare Binärdatei in der Regel mehrere Phasen:
- Preprocessing — Verarbeitung der Präprozessor-Direktiven (#include, #define usw.), das Ergebnis ist ein erweiterter Quellcode.
- Kompilierung — Umwandlung des erweiterten Quellcodes in Assembler-Code.
- Assemblierung — Übersetzung des Assembler-Codes in eine Objektdatei (.o), die Maschinencode enthält, aber noch nicht mit anderen Modulen verknüpft ist.
- Linken — Zusammenfügen einer oder mehrerer Objektdateien und Bibliotheken zu einer einzigen ausführbaren Datei.
Beispielbefehl für Kompilierung und Linken mit gcc:
gcc main.c -o myprogram
Hier führt gcc automatisch alle Phasen aus: Preprocessing, Kompilierung, Assemblierung und Linken, und erstellt die ausführbare Datei myprogram.