Heim  >  Artikel  >  System-Tutorial  >  Detaillierte Erläuterung der Befehle-GCC

Detaillierte Erläuterung der Befehle-GCC

王林
王林nach vorne
2024-03-25 21:27:091164Durchsuche

Detaillierte Erläuterung der Befehle-GCC

Grammatik
gcc(选项)(参数)
Optionen
-o:指定生成的输出文件;
-E:仅执行编译预处理;
-S:将C代码转换为汇编代码;
-wall:显示警告信息;
-c:仅执行编译操作,不进行连接操作。
Parameter
C源文件:指定C语言源代码文件。
Instanzen

Allgemeine Kompilierungsbefehlsoptionen

Angenommen, die Quellprogrammdatei heißt test.c

Link ohne Optionen kompilieren

gcc test.c

Test.c vorverarbeiten, zusammenstellen, kompilieren und verknüpfen, um eine ausführbare Datei zu bilden. Hier wird keine Ausgabedatei angegeben, die Standardausgabe ist a.out.

Option -o

gcc test.c -o test

Test.c vorverarbeiten, zusammenstellen, kompilieren und verknüpfen, um die ausführbare Datei test zu bilden. Mit der Option -o wird der Dateiname der Ausgabedatei angegeben.

Option -E

gcc -E test.c -o test.i

Test.c vorverarbeiten und test.i-Datei ausgeben.

Option -S

gcc -S test.i

Fügen Sie die Vorverarbeitungsausgabedatei test.i in die Datei test.s ein.

Option -c

gcc -c test.s

Kompilieren Sie die Assembly-Ausgabedatei test.s und geben Sie die Datei test.o aus.

Kein Optionslink

gcc test.o -o test

Verknüpfen Sie die kompilierte Ausgabedatei test.o mit der endgültigen ausführbaren Datei test.

Option -O

gcc -O1 test.c -o test

Kompilieren Sie das Programm mit Kompilierungsoptimierungsstufe 1. Die Stufe beträgt 1 bis 3. Je größer die Stufe, desto besser ist der Optimierungseffekt, aber desto länger ist die Kompilierungszeit.

Kompilierungsmethode für Dateien mit mehreren Quellen

Wenn Sie mehrere Quelldateien haben, gibt es grundsätzlich zwei Kompilierungsmethoden:

Angenommen, es gibt zwei Quelldateien test.c und testfun.c

Mehrere Dateien zusammenstellen

gcc testfun.c test.c -o test

Kompilieren Sie testfun.c bzw. test.c und verknüpfen Sie sie mit der ausführbaren Testdatei.

Kompilieren Sie jede Quelldatei separat und verknüpfen Sie dann die kompilierte Ausgabezieldatei.

gcc -c testfun.c    #将testfun.c编译成testfun.o
gcc -c test.c       #将test.c编译成test.o
gcc -o testfun.o test.o -o test    #将testfun.o和test.o链接成test

Beim Vergleich der beiden oben genannten Methoden erfordert die erste Methode, dass beim Kompilieren alle Dateien neu kompiliert werden, während die zweite Methode nur geänderte Dateien neu kompilieren kann und nicht geänderte Dateien nicht neu kompiliert werden müssen.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Befehle-GCC. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:linuxprobe.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen