Introducao à Programacao > Conteúdo > Ambiente de Desenvolvimento | Atualizado em: 15/04/2022 |
GCC (GNU Compiler Collection)
Prof. Eduardo Ono
Conceitos
graph TD
MAIN(main.c) --> |"Pré-processador (GCC)"| CODE(main.i)
CODE -->|"Compilador (GCC)"| MAIN_ASM(main.s)
MAIN_ASM -->|Assembler| MAIN_OBJ[(main.o)]
MAIN_OBJ --- LINKER(( ))
LINKER -->|Linker| EXE(Executável.exe)
SRC(código-fonte.c) -->|"Pré-processador (GCC)"| CODE2(código-fonte.i)
CODE2 -->|"Compilador (GCC)"| CODE_ASM(código-em-assembly.s)
CODE_ASM -->|Assembler| OBJ[(objeto-binário.o)]
OBJ --- LINKER
-
Para manter os arquivos intermediários (“.i”, “.s” e “.o”) após a compilação, utilizar o parâmetro
-save-temps
:gcc -save-temps main.c -o main
-
Para visualizar todo processo de compilação, utilizar o parâmetro
-v
:gcc -v main.c -o main
Linhas de Comando (PowerShell)
- Localizar o arquivo executável do GCC:
Get-Command gcc.exe
gcm gcc.exe
- Exibir a Versão do GCC:
gcc --version
Compilar programas em C
- Exemplos:
Comando | Descrição |
---|---|
gcc main.c |
Compila o arquivo main.c e gera o arquivo executável a (Linux) ou a.exe (Windows). |
gcc -Wall main.c |
Compila o arquivo main.c e gera o arquivo executável a (Linux) ou a.exe (Windows). O parâmetro -Wall habilita a exibição de todos os alertas (“warnings”) da compilação. |
gcc main.c -o main |
Compila o arquivo main.c e gera o executável main (Linux) ou main.exe (Windows). |
gcc -Wall -c main.c |
Compila o arquivo main.c e gera o arquivo main.o (objeto binário). |
gcc -Wall -c *.c |
Compila todos os arquivos com extensão “.c” no diretório corrente, gerando os respectivos arquivos “.o” (objetos binários). |
Videos de Apoio
Thumb | Descrição |
---|---|
[Rodrigo Mello] Compilação e Linkagem em Linguagem C (7:00, YouTube, Mar/2015) |