Junior — Middle
Como ocorre a fase de compilação dos ficheiros fonte em um ficheiro binário executável no Linux?
sobes.tech IA
Resposta da IA
No Linux, a compilação de ficheiros fonte (por exemplo, em C ou C++) para um ficheiro binário executável geralmente passa por várias etapas:
- Pré-processamento — processamento das diretivas do pré-processador (#include, #define, etc.), resultando num código fonte expandido.
- Compilação — transformação do código fonte expandido em código de assembler.
- Assemblagem — conversão do código de assembler num ficheiro objeto (.o), que contém código de máquina, mas sem ligação com outros módulos.
- Ligação — união de um ou mais ficheiros objeto e bibliotecas num único ficheiro executável.
Exemplo de comando para compilar e ligar usando gcc:
gcc main.c -o myprogram
Aqui, o gcc realiza automaticamente todas as etapas: pré-processamento, compilação, assemblagem e ligação, criando o ficheiro executável myprogram.