Detaillierte Erläuterung der Verwendung des gcc-Befehls unter Linux

Detaillierte Erläuterung der Verwendung des gcc-Befehls unter Linux

1. Installation von gcc (am Beispiel von Ubuntu) sudo apt-get install build-essential

Nach der Installation können Sie die Version mit gcc --version überprüfen.

Lassen Sie uns seine grundlegende Anwendung beim Kompilieren ausführbarer Dateien durch gcc meistern.

Vorbereitung: Erstellen Sie zunächst mit vim eine .c-Datei im aktuellen Verzeichnis, zum Beispiel 666.c

 $ vim 666.c

(Die Verwendung von vim kann in einem anderen Blog von mir ausführlich beschrieben werden, daher werde ich hier nicht ins Detail gehen.)

Geben Sie einen Code ein.

 #include <stdio.h>
hauptsächlich()
{
	int a,i;
	ein = 6;
	für (i = 0; i < 3; i++)
	{
		drucken("%d",a);
	}
} 

(Jedes Mal, wenn wir cat zur Überprüfung verwenden)

1. Vorverarbeitung

1. Die Vorverarbeitung erweitert Makrodefinitionen (wie #define), erweitert Headerdateien (wie stdio.h), kompiliert Bedingungen (wie ifdef), erweitert alle Makros und löscht alle Kommentare (wie "//"). Die Vorverarbeitung cpp kompiliert Quellcode und Headerdateien vorab in eine .i-Datei. (Beachten Sie, dass die Syntax derzeit nicht geprüft wird. Auch bei Syntaxfehlern wird daher kein Fehler gemeldet.)

2. Befehl:

 $ gcc -E (Quelldateiname) -o (Präprozessordateiname)

oder:

 $ gcc (Quelldateiname) > (Präprozessordateiname)

Beispielsweise kann die Vorverarbeitung gemäß 666.c wie folgt aussehen:

gcc -E 666.c -o 666.i

Es kann auch gcc 666.c > 666.i sein

2. Zusammenstellung

1. Unter Kompilieren versteht man die Überprüfung auf korrekte Syntax und das Kompilieren der vorverarbeiteten Datei in eine Assemblydatei.

2. Befehl:

$ gcc -S (Quelldatei) -o (Assemblydatei)

Beispiel: gcc -S 666.i -o 666.s

3. Zusammenstellung

1. Assembly bedeutet das Erzeugen von Zieldateien (Binärdateien) aus Assemblydateien. Durch die Assembly werden Textcodes in Binärcodes umgewandelt. (Binärcodedateien haben die Endung .o).

2. Befehl:

 $ gcc -c (Assemblydatei) -o (Objektdatei)

Beispiel: gcc -c 666.s -o 666.o

(Da es sich um eine Binärdatei handelt, wird sie verstümmelt.)

4. Links

1. Verknüpfen Sie, um abhängige Bibliotheksdateien (statisch und dynamisch) zu finden und die Zieldateien in ein ausführbares Programm zu verknüpfen.

 $ gcc -c [Zieldatei] -o [ausführbares Programm] -l [Name der dynamischen Bibliothek]

Wenn keine dynamische Bibliothek vorhanden ist (normalerweise)

direkt

 $ gcc -c [Zieldatei] -o [ausführbares Programm] 

Beispiel: gcc -c 666.o -o 666

Zu diesem Zeitpunkt wird ein ausführbares Programm 666 generiert

Wenn Sie diesen Befehl ausführen möchten:

 $ ./ausführbares Programm

Das ./ bedeutet im aktuellen Verzeichnis.

Zum Beispiel./666

(Hinweis: Wenn wir den Namen der ausführbaren Datei von gcc verwenden, wird im Allgemeinen standardmäßig eine ausführbare Datei a.out generiert. In diesem Fall können wir ./a.out verwenden, um sie direkt auszuführen.)

Dies ist das Ende dieses Artikels über die detaillierte Verwendung des gcc-Befehls unter Linux. Weitere relevante Inhalte zum Linux-gcc-Befehl finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Spezifische Verwendung des Linux-gcc-Befehls
  • So installieren Sie die Linux-Onlinesoftware gcc online
  • Installationsprozess des GCC-Compilers unter Linux

<<:  Teilen Sie die 15 besten HTML/CSS-Design- und Entwicklungsframeworks

>>:  Detaillierte Erklärung, wie man IP-Adressen effektiv in MySQL speichert und wie man zwischen String-IP und numerischen Werten konvertiert

Artikel empfehlen

Vertieftes Verständnis davon in JavaScript

Vertieftes Verständnis davon in Js JavaScript Ber...

Offlineinstallation von Centos7.2 mysql5.7.18.tar.gz

Aufgrund der Netzwerkisolation kann MySQL nicht m...

So implementieren Sie Code und Schritte für den digitalen Paging-Effekt in CSS

Eine beträchtliche Anzahl von Websites verwendet d...

Analyse des Prinzips und der Verwendung von MySQL-Benutzerdefinierten Funktionen

Dieser Artikel veranschaulicht anhand von Beispie...

MySQL 5.7.21 Installations- und Konfigurations-Tutorial unter Windows 10

Dieser Artikel zeichnet die Installations- und Ko...

JS praktisches objektorientiertes Schlangenspielbeispiel

Inhaltsverzeichnis denken 1. Bild mit dem gierige...

Eine kurze Analyse des MySQL-Index

Ein Datenbankindex ist eine Datenstruktur, deren ...

3 Tipps, die Sie beim Erlernen von JavaScript kennen müssen

Inhaltsverzeichnis 1. Der magische Erweiterungsop...

Tutorial zu HTML-Formular-Tags (1):

Formulare sind eine wichtige externe Form zur Imp...

Schritte zur Lösung des Zeitzonenproblems in MySQL 8.0

Softwareversion Windows: Windows 10 MySQL: mysql-...

Web-Unterrichtspläne, Unterrichtspläne für Anfänger

Unterrichtsthemen Webseite Anwendbare Klasse Zwei...

Verwenden von JavaScript-Unterschieden zum Implementieren eines Vergleichstools

Vorwort Bei der Arbeit muss ich jede Woche die vo...