El proceso de compilar gcc en un archivo ejecutable

Editar un archivo test.c

#include <stdio.h>

int main()
{
    
    
	printf("this is test program\n");
	return 0;
}

1. Etapa de pretratamiento

En esta etapa, el compilador compila la parte de preprocesamiento en el programa. La opción "gcc -E" significa que solo se realiza el preprocesamiento y no se realiza ningún otro procesamiento. El siguiente comando generará el archivo de programa preprocesado (test.i).
gcc -E prueba.c -o prueba.i

2. Fase de compilación

En esta etapa, gcc primero verificará si el código tiene errores gramaticales y si es estándar. Después de comprobar que es correcto, gcc traduce el código al lenguaje ensamblador. La opción "gcc -S" significa solo compilar y generar código ensamblador (archivo test.s).
gcc -S test.i -o test.s

3. Etapa de montaje

En esta etapa, el archivo de ensamblaje compilado se convierte en un archivo de objeto OBJ. La opción "gcc -c" significa simplemente compilar sin vincular y generar el archivo objeto "test.o"
gcc -c prueba.s -o prueba.o

4. Fase de enlace

En esta etapa, vincular el archivo objeto OBJ generado en la etapa de ensamblaje, el archivo OBJ de la biblioteca del sistema y el archivo de la biblioteca para finalmente generar un programa ejecutable. Por ejemplo, para realizar la impresión printf aquí, es a través de la biblioteca de funciones de enlace.
prueba gcc. o -o prueba

Supongo que te gusta

Origin blog.csdn.net/sxtdzj/article/details/103453061
Recomendado
Clasificación