logo

GCC-Linux

Unter Linux steht GCC für GNU-Compiler-Sammlung . Es handelt sich um ein Compilersystem für die verschiedenen Programmiersprachen. Es wird hauptsächlich zum Kompilieren der C- und C++-Programme verwendet. Als notwendiges Argument wird der Name des Quellprogramms verwendet. Restargumente sind optional, z. B. Debugging, Warnung, Objektdatei und Linkbibliotheken.

GCC ist eine Kernkomponente der GNU-Toolchain. Mit dem GCC werden verschiedene Open-Source-Projekte kompiliert, beispielsweise der Linux-Kernel und GNU-Tools.

Es wird unter der GPL (General Public License) vertrieben. Die erste Version, GCC 1.0 wurde 1987 veröffentlicht. Es war nur für die Programmiersprache C gedacht, wurde aber im selben Jahr für die erweitert Programmiersprache C++ . Später wurde es für andere Programmiersprachen wie Objective-C, Objective-C++, Fortran, entwickelt. Java , Ada, Go und mehr. Die neueste Version verfügt über eine deutlich verbesserte Implementierung der Programmiersprachen.

Es ist der offizielle Partner von GNU OS; Daher wurde es als Standard-Compiler der Linux-basierten Systeme übernommen.

Hashmap

Komponenten von GCC

GCC ist ein portables Tool und kann auf vielen Betriebssystemen ausgeführt werden. Außerdem ist eine Portierung möglich Windows durch die Verwendung einiger Tools wie z Cygwin, MinGW und MinGW-W64 . Da es eine Schlüsselkomponente der GNU-Toolchain ist, enthält es die folgenden Komponenten für die Entwicklung von Anwendungen und Betriebssystemen:

GNU Compiler Collection (GCC): Es handelt sich um eine Compiler-Suite für viele Sprachen, wie zum Beispiel C/C++ und Objective-C/C++.

GNU-Make: Es handelt sich um ein Automatisierungstool, das zum Kompilieren und Erstellen von Anwendungen verwendet wird.

GNU-Binutils: Es handelt sich um eine Suite, die binäre Hilfsprogramme enthält, z Linker Und Assembler .

GNU-Debugger (GDB). Es wird zum Debuggen der Anwendungen verwendet.

GNU Autotools: Es handelt sich um ein Build-System, das einige Hilfstools wie Autoconf, Autoheader, Automake und Libtool enthält.

GNU Bison: Es ist ein Parser-Generator wie Lex und Yacc.

GCC-Compiler-Prozess

Der GCC kompiliert und macht ein Programm in den folgenden vier Schritten ausführbar:

GCC-Linux

Vorverarbeitung: In diesem Schritt erstellt der GNU-Präprozessor (cpp.exe) eine Zwischendatei mit dem Quellcode. Der Präprozessor bindet die Header ein (#include) und erweitert die Makros (#define). Betrachten Sie den folgenden Befehl:

 cpp hello.c > hello.i 

Der obige Befehl erstellt eine Zwischendatei „hello.i“.

Zusammenstellung: In diesem Schritt wird der vorverarbeitete Quellcode in Assembler-Code für einen bestimmten Prozessor kompiliert.

 gcc -S hello.i 

Der obige Befehl erstellt eine Assemblydatei „hello.s“. Die Option „-s“ wird verwendet, um anzugeben, dass der Assembler-Code anstelle des Objektcodes erzeugt werden soll.

Montage: Der Assemblercode wird in Maschinencode umgewandelt. Es wird eine Objektdatei „hello.o“ erstellt.

 as -o hello.o hello.s 

Linker: Der Linker (ld.exe) ist der letzte Schritt des Compilerprozesses. Es verknüpft den Objektcode mit dem Bibliothekscode und erzeugt eine ausführbare Datei.

 ld -o hello.exe hello.o 

Der obige Befehl erstellt eine ausführbare Datei „hello.exe“.

Installation von GCC unter Linux

Standardmäßig ist es in den meisten Linux-Distributionen enthalten. Wir können es überprüfen, indem wir den folgenden Befehl ausführen:

 gcc -version 

Der obige Befehl zeigt die installierte Version des GCC-Tools an. Wenn es nicht installiert ist, führen Sie die folgenden Schritte aus, um es zu installieren:

Schritt 1: Aktualisieren Sie die Paketliste.

Um die Paketliste zu aktualisieren, führen Sie den folgenden Befehl aus:

 sudo apt update 

Sie werden nach dem Systemadministratorkennwort gefragt. Geben Sie das Kennwort ein. Es beginnt mit der Aktualisierung des Systempakets. Betrachten Sie den folgenden Ausschnitt der Ausgabe:

GCC-Linux

Schritt 2: Installieren Sie das Build-Essential-Paket.

Es enthält verschiedene Pakete wie gcc, g++ und das Dienstprogramm make. Führen Sie den folgenden Befehl aus, um es zu installieren:

Finden Sie in String c++
 sudo apt install build-essential 

Der obige Befehl installiert die erforderlichen Pakete für das GCC-Dienstprogramm. Jetzt können wir das GCC-Dienstprogramm auf unserem Computer verwenden. Betrachten Sie den folgenden Ausschnitt der Ausgabe:

GCC-Linux

Schritt 3: Überprüfen Sie die Installation.

Um die Installation zu überprüfen, führen Sie den Befehl gcc -version wie folgt aus:

 gcc --version 

Es wird die installierte Version des GCC-Dienstprogramms angezeigt. Um genauere Details zur Version anzuzeigen, verwenden Sie die Option „-v“. Betrachten Sie die folgende Ausgabe:

GCC-Linux

Hier haben wir das GCC-Dienstprogramm erfolgreich installiert. Lassen Sie uns verstehen, wie man es benutzt. Wir werden einige C-Programme mit GCC erstellen und ausführen.

Führen Sie das erste C-Programm von gcc aus

Erstellen Sie ein Basic c-Programm 'Hallo Welt!'. Erstellen Sie eine Datei „hello.c“ und fügen Sie den folgenden Code ein:

 #include int main() { printf('Hello, world!
'); return 0; } 

Kompilieren Sie nun hello.c wie folgt:

 gcc hello.c 

Wenn wir hello.c direkt ausführen, wird der Fehler ausgegeben. Machen Sie es ausführbar. Die standardmäßige ausführbare Datei für das Linux-System ist a.out. Um die Datei auszuführen, führen Sie den Befehl chmod wie folgt aus:

 chmod a+x a.out 

Führen Sie nun das C-Programm aus als:

 ./a.out 

Betrachten Sie die folgende Ausgabe:

GCC-Linux

Beispiele für GCC-Befehle

Einige nützliche Beispiele für den gcc-Befehl sind wie folgt:

    Geben Sie den Namen der Objektdatei an

Standardmäßig erstellt der Befehl gcc die Objektdatei als 'a.out .' Wenn Sie den Standardnamen der Ausgabedatei ändern möchten, verwenden Sie die '-Ö' Möglichkeit.

Führen wir den grundlegenden gcc-Befehl aus:

 gcc hello.c 

Der obige Befehl generiert die Objektdatei „a.out“. Um den Namen der Objektdatei anzugeben, führen Sie den Befehl wie folgt aus:

 gcc hello.c -o hello 

Es wird die Ausgabedatei „Hallo“ generiert. Betrachten Sie die folgende Ausgabe:

GCC-Linux
    Aktivieren Sie alle Warnungen

Um alle Warnungen in der Ausgabe zu aktivieren, verwenden Sie die '-Wand' Option mit dem gcc-Befehl. Erstellen wir eine Variable in der Hauptfunktion von hello.c. Betrachten Sie den folgenden Code:

Hallo c:

 #include int main() { int a; printf('Hello, world!
'); return 0; } 

Wenn wir den obigen Code mit der Option -Wall kompilieren. Es wird die Warnungen auslösen. Führen Sie den folgenden Befehl aus, um die Datei zu kompilieren:

 gcc -wall hello.c 

Der obige Befehl zeigt die Warnungen an. Betrachten Sie die folgende Ausgabe:

GCC-Linux
    Erzeugen Sie die schrittweise Ausgabe des Kompilierungsprozesses

Wir können nur die schrittweise Ausgabe des Kompilierungsprozesses erzeugen.

Erzeugen Sie die Präprozessorausgabe

Mit der Option „-E“ können wir nur die Vorverarbeitungsausgabe erzeugen. Betrachten Sie den folgenden Befehl:

 gcc -E hello.c > hello.i 

Aus dem obigen Befehl eine Datei 'Hallo ich' das eine vorverarbeitete Ausgabe enthält, wird generiert. Betrachten Sie die folgende Ausgabe:

GCC-Linux

Erzeugen Sie den Assemblercode

Um den Assemblercode zu erzeugen, führen Sie den Befehl mit der Option „-S“ aus. Betrachten Sie den folgenden Befehl:

 gcc -S hello.c > hello.s 

Der obige Befehl generiert das „hello.s.“ Datei, die den Assemblercode enthält. Betrachten Sie die folgende Ausgabe:

GCC-Linux

Erzeugen Sie den kompilierten Code

Python-Sortierwörterbuch

Mit der Option „-C“ können wir nur den kompilierten Code erstellen. Betrachten Sie den folgenden Befehl:

 gcc -C hello.c 

Der obige Befehl generiert eine Datei „a.out“, die nur den Maschinencode oder kompilierten Code enthält. Betrachten Sie die folgende Ausgabe:

GCC-Linux

Erzeugen Sie alle Zwischendateien des Kompilierungsprozesses

Mit der Option „-save-temp“ können wir alle Zwischendateien des Kompilierungsprozesses erstellen. Betrachten Sie die folgende Ausgabe:

 gcc -save-temps hello.c 

Der obige Befehl generiert alle Zwischendateien sowie ausführbaren Dateien auf einmal. Betrachten Sie die folgende Ausgabe:

GCC-Linux
    Drucken Sie die Ausgabe ausführlich aus.

Wir können ausführliche Informationen zu jedem Schritt anzeigen, den der Befehl gcc ausführt. Führen Sie dazu den Befehl mit der Option „-v“ aus.

 gcc -W -v hello.c 

Betrachten Sie den folgenden Ausschnitt der Ausgabe:

GCC-Linux

Wir haben einige äußerst nützliche Beispiele für den Befehl gcc besprochen. Da der Befehl gcc eine Vielzahl von Optionen bietet, können Sie bei der Verwendung irgendwo stecken bleiben. Sehen wir uns an, wie Sie selbst Hilfe vom Terminal erhalten.

GCC-Handbuch

Wenn Sie bei der Verwendung des Befehls gcc irgendwo nicht weiterkommen, können Sie Hilfe von Ihrem Terminal anfordern. Um über die Befehlszeile auf das Handbuch zuzugreifen, führen Sie den Befehl man wie folgt aus:

 man gcc 

Der obige Befehl zeigt das Handbuch an, das eine Beschreibung und eine Liste der unterstützten Optionen mit einer kurzen Beschreibung enthält. Betrachten Sie den folgenden Ausschnitt der Ausgabe:

GCC-Linux

Sie können durch die Ausgabe scrollen, um mehr zu lesen. Drücken Sie die Taste „h“, um Hilfe zu erhalten, und q, um das Handbuch zu verlassen und zum Terminal zurückzukehren.