1.  

    O Processo de Compilação

    Muitas vezes na compilação de um código fonte pensamos que existe somente um processo de uma única etapa, mas na verdade o processo se dividem em quatro estágios realizados por componentes diferentes:

    • Pre-processador
    • Compilador
    • Montador
    • Ligador

    A figura abaixo exemplifica as etapas do processo de compilação e os arquivos “auxiliares” que são gerados apos a execução de cada estagio. A seguir cada processo será explicado.


    Pré-processamento:

    No estagio de pré-processamento as diretrizes #define, #if, #include e etc são resolvidas.

    Compilação:

    Neste estagio o compilador executa a “tradução” ou a compilação propriamente dita dos códigos fontes em linguagem de montagem que serão utilizados na próxima etapa do processo.

    Montagem:

    Ao final o estagio de montagem um arquivo objeto .o é gerado com o montador paradão normalmente o as.

    Ligação:

    No estagio final o ligador faz a junção entre todos os códigos objetos .o, colocando os códigos objetos no seus locais adequados no executável. O ligador padrão na maiorias dos sistemas é o ld.

    No próximo post pretendo exemplificar cada etapa do processo de compilação utilizando o GNU GCC, uma ferramente essencial na vida de todos nos, mesmo que indiretamente.