ExpertiDict

C · Intermediário · Português · Técnico

etapas da compilação

/e.ˈta.pɐs dɐ kõ.pi.la.ˈsɐ̃w̃/substantivo

Fases pelas quais o gcc leva um .c até o executável: pré-processamento, compilação para assembly, montagem em arquivo objeto e ligação com outras bibliotecas pelo linker.

Onde usar

Entender as etapas ajuda a localizar o erro: sintaxe vem da compilação, 'undefined reference' vem da ligação. As flags -E, -S e -c fazem o gcc parar em cada fase.

Em código

gcc -E main.c -o main.i   # pré-processa
gcc -S main.i -o main.s   # gera assembly
gcc -c main.s -o main.o   # objeto
gcc main.o -o prog        # liga

Exemplos

Roda só o pré-processador com -E para ver o que a macro virou.

O erro é da ligação, a compilação passou bem.

Cuidado

Tratar compilar e ligar como a mesma coisa; erros de ligação só aparecem depois que todos os arquivos compilaram.

Sinônimos

pipeline de build

Veja também

Todos os termos de C