Guia Completo para Instalar e Usar o GCC no Ubuntu

目次

1. Introdução

O que é o GCC?

GCC (GNU Compiler Collection) é um compilador de código aberto capaz de compilar várias linguagens de programação, como C e C++. É amplamente usado como o compilador padrão em muitas distribuições Linux.

Principais Recursos do GCC:

  • Suporta múltiplas linguagens, incluindo C, C++, Fortran, Java e mais.
  • Código aberto e livre para uso por qualquer pessoa.
  • Permite compilação rápida e confiável.

Por que Usar o GCC no Ubuntu?

  1. Incluído como pacote padrão Os repositórios do Ubuntu incluem o GCC por padrão, facilitando a instalação.
  2. Suporte e documentação abundantes Como há muitos usuários em todo o mundo, há uma grande quantidade de informações disponíveis para solução de problemas e personalização.
  3. Livre para uso Você pode construir um ambiente de desenvolvimento poderoso a baixo custo.
  4. Fácil de personalizar Você pode gerenciar múltiplas versões do GCC, permitindo construir um ambiente adequado para cada projeto.

Resumo

Neste artigo, introduzimos uma visão geral do GCC e os benefícios de usá-lo no Ubuntu. O GCC é um compilador poderoso que suporta múltiplas linguagens e é livre para uso, e no Ubuntu é especialmente fácil de instalar.

2. Pré-requisitos

Atualize o sistema e verifique as dependências

Primeiro, atualize as informações de pacotes do Ubuntu para o estado mais recente. Isso ajuda a prevenir erros durante a instalação.

1. Atualize o sistema para o estado mais recente

sudo apt update
sudo apt upgrade
  • sudo apt update : Atualiza a lista de pacotes para a versão mais recente.
  • sudo apt upgrade : Atualiza os pacotes instalados para suas versões mais recentes.

Notas:

  • A atualização pode levar vários minutos.
  • Se após a atualização uma mensagem “reinicialização necessária” aparecer, reinicie o sistema.

Verifique as ferramentas de desenvolvimento

Para instalar o GCC, ferramentas e pacotes de desenvolvimento básicos são necessários. Execute o comando a seguir para instalar os pacotes necessários com antecedência.

sudo apt install build-essential

Este comando instala ferramentas de desenvolvimento essenciais, incluindo o GCC.

Exemplos de pacotes instalados:

  • gcc (compilador C)
  • g++ (compilador C++)
  • make (ferramenta de build)

Verifique o status de instalação

Para confirmar quais pacotes estão instalados e verificar suas versões, use o comando a seguir:

gcc --version

Saída de exemplo:

gcc (Ubuntu 9.4.0-1ubuntu1) 9.4.0
Copyright (C) 2021 Free Software Foundation, Inc.

Se você vir esta saída, pode confirmar que o GCC foi instalado corretamente.

Resumo dos pré-requisitos

Até este ponto, você completou os pré-requisitos necessários para instalar o GCC.

  • Atualizou e atualizou o sistema para o estado mais recente.
  • Instalou os pacotes necessários para preparar o ambiente.
  • Verificou o status de instalação e versão do GCC.

3. Como Instalar o GCC

Passos básicos de instalação

No Ubuntu, o GCC pode ser instalado facilmente a partir do repositório oficial. Siga os passos abaixo para realizar a instalação.

  1. Instale o pacote build-essential
    sudo apt install build-essential
    

Este comando instala o GCC, G++ e o conjunto completo de ferramentas de desenvolvimento.

  1. Confirme o progresso da instalação Durante a instalação, se “Proceed? (Y/n)” for exibido, digite “Y” e pressione Enter.

Como verificar após a instalação

Após a conclusão da instalação, verifique a versão do GCC para confirmar que tudo foi instalado corretamente:

gcc --version

Saída de exemplo:

gcc (Ubuntu 9.4.0-1ubuntu1) 9.4.0
Copyright (C) 2021 Free Software Foundation, Inc.

Se as informações de versão forem exibidas como mostrado, o GCC foi instalado com sucesso.

Instalando ferramentas ou bibliotecas adicionais

Às vezes, instalar apenas o GCC não é suficiente, então você pode querer instalar os seguintes pacotes adicionais:

  1. Instale o G++ (compilador C++)
    sudo apt install g++
    
  1. Instale ferramentas de depuração
    sudo apt install gdb
    
  1. Instale páginas de manual de desenvolvimento
    sudo apt install manpages-dev
    

Isso garante que você possa consultar imediatamente a ajuda e as páginas de manual relacionadas ao GCC quando necessário.

Solução de problemas de instalações falhas

  1. Pacote não encontrado
    E: Unable to locate package build-essential
    

Solução: Atualize as informações do repositório:

sudo apt update
sudo apt upgrade
  1. Erros de permissão ocorrem
    Permission denied
    

Solução: Useá‑los com privilégios de administrador.

Resumo das etapas de instalação

Nesta seção, explicamos como instalar o GCC e verificar a instalação, bem como como instalar pacotes adicionais.

Principais pontos:

  • Use sudo apt install build-essential para instalar rapidamente.
  • Verifique a versão para confirmar o status da instalação.
  • Adicione G++, gdb e outras ferramentas conforme necessário.

4. Uso básico do GCC

Criar e compilar um programa simples

  1. Criar um programa de exemplo

Primeiro, crie um programa simples “Hello, World!”:

nano hello.c

Quando o editor abrir, insira o código a seguir:

#include <stdio.h>

int main() {
    printf("Hello, World!n");
    return 0;
}

Após digitar, pressione Ctrl + X para salvar, depois Y para confirmar e sair.

Compilar o programa

Em seguida, compile este programa usando o GCC:

gcc hello.c -o hello

Explicação do comando:

  • gcc : O comando do compilador.
  • hello.c : O arquivo de código‑fonte a ser compilado.
  • -o hello : Define o nome do arquivo de saída como “hello”.

Executar o programa compilado

Execute o programa compilado com o seguinte comando:

./hello

Saída esperada:

Hello, World!

Se isso for exibido, o programa foi compilado e executado com sucesso.

Tratamento de erros

  1. Erros devido a falhas de codificação

Mensagem de erro de exemplo:

hello.c: In function ‘main’:
hello.c:3:5: error: expected ‘;’ before ‘return’
    return 0;

Solução:
A mensagem de erro indica a localização (ex.: linha 3). Verifique seu código e corrija os erros de sintaxe.

  1. Erro de compilação

Erro de exemplo:

gcc: command not found

Solução:
O GCC pode não estar instalado. Reinstale usando:

sudo apt install build-essential
  1. Erro em tempo de execução

Erro de exemplo:

bash: ./hello: Permission denied

Solução:
Se o arquivo não possuir permissões de execução, use:

chmod +x hello
./hello

Opções de otimização

O GCC permite usar opções de otimização para melhorar o desempenho do programa.

Exemplo: especificar nível de otimização

gcc -O2 hello.c -o hello
  • -O1 : Otimizações básicas -O2* : Otimizações mais avançadas.
  • -O3` : Otimização máxima (priorizando a velocidade de execução).

Isso ajuda a otimizar a velocidade de execução ou o tamanho do código de forma eficiente.

Resumo

Nesta seção, abordamos a criação, compilação e execução de um programa básico usando o GCC.

Principais pontos:

  • Você aprendeu a criar código de exemplo e compilá‑lo.
  • Examinamos como lidar com erros quando eles ocorrem.
  • Introduzimos opções de otimização para melhorar o desempenho.

5. Gerenciando múltiplas versões

Instalando múltiplas versões

No Ubuntu, você pode instalar diferentes versões do GCC simultaneamente. Vamos instalar várias versões usando as etapas abaixo.

  1. Verificar versões disponíveis
    sudo apt search gcc-
    

Este comando permite ver a lista de versões do GCC disponíveis no repositSaída de exemplo:

gcc-9 - GNU C compiler
gcc-10 - GNU C compiler
gcc-11 - GNU C compiler
  1. Instalar as versões necessárias

Por exemplo, instale o GCC 9 e o GCC 10:

sudo apt install gcc-9 gcc-10

Quando a instalação terminar, prossiga para configurar a troca de versões.

Como trocar de versão

O Ubuntu suporta o comando update-alternatives para trocar facilmente as versões do GCC.

  1. Registrar as versões do GCC instaladas no update-alternatives

Execute:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100

Nesta configuração, o GCC 10 está registrado como o padrão preferido (prioridade 100).

  1. Selecione a versão a ser usada

Use o seguinte comando para escolher manualmente a versão desejada:

sudo update-alternatives --config gcc

Saída de exemplo:

There are 2 choices for the alternative gcc (providing /usr/bin/gcc).

  Selection    Path             Priority   Status
------------------------------------------------------------
* 0            /usr/bin/gcc-10  100       auto mode
  1            /usr/bin/gcc-9   90        manual mode
  2            /usr/bin/gcc-10  100       manual mode

Press <enter> to keep the current choice[*], or type selection number:

Digite o número desejado e pressione Enter.

Usando uma versão específica por projeto

Se você quiser usar uma versão particular para cada projeto, pode alternar os links simbólicos de acordo.

  1. Criar ou atualizar link
    sudo ln -sf /usr/bin/gcc-9 /usr/bin/gcc
    

Este comando define o GCC 9 como a versão padrão.

  1. Verificar a versão
    gcc --version
    

Confirme que a versão que você configurou está aplicada corretamente.

Resumo

Nesta seção, explicamos como instalar múltiplas versões do GCC e usar update-alternatives para alternar facilmente.

Pontos principais:

  • Instale as versões que você precisa e gerencie-as com update-alternatives .
  • Você também pode configurar links simbólicos para usar uma versão específica por projeto.

6. Solução de problemas

Erros durante a instalação e como resolvê-los

Exemplo de erro 1: Pacote não encontrado

E: Unable to locate package build-essential

Causa:
A lista de pacotes não está atualizada, ou a configuração do repositório tem problemas.

Solução:
Execute os seguintes comandos para atualizar as informações do repositório:

sudo apt update
sudo apt upgrade
sudo apt install build-essential

Remédio adicional:

sudo add-apt-repository universe
sudo apt update

Isso pode permitir que o pacote seja encontrado.

Exemplo de erro 2: Permissão negada

Permission denied

Causa:
Os comandos não estão sendo executados com privilégios administrativos.

Solução:
Adicione sudo no início de todos os comandos de instalação.

sudo apt install build-essential

Erros durante a compilação e como resolvê-los

Exemplo de erro 1: Compilador não encontrado

gcc: command not found

Causa:
O GCC não está instalado ou o PATH não está definido corretamente.

Solução:
Verifique se o GCC está instalado:

sudo apt install gcc

Se estiver instalado, verifique e ajuste o link simbólico:

sudo ln -s /usr/bin/gcc-10 /usr/bin/gcc

Exemplo de erro 2: Erro de vinculação de biblioteca

undefined reference to 'main'

Causa:
A função main não está definida no seu programa, ou a vinculação falhou.

Solução:
Certifique-se de que a função main está incluída, e recompile com opções de vinculação, por exemplo:

gcc -o output main.c -lm

Erros em tempo de execução e como resolvê-los

Exemplo de erro 1: Sem permissão de execução

bash: ./program: Permission denied

Causa:
O arquivo executável não tem permissão de execução.

Solução:
Conceda permissão de execução:

chmod +x program
./program

Exemplo de erro 2: Bibliotecas ausentes

error while loading shared libraries: libXXX.so: cannot open shared object file: No such file or directory

Causa:
Bibliotecas compartilhadas necessárias não estão instaladas.

Solução:
Verifique o nome da biblioteca ausente e instale-a:

sudo apt install libXXX-dev

Erros durante a alternância de versão e soluções

Exemplo de erro: alternância não aplicada

gcc --version

Se a versão alternada não for exibida, reexamine as configurações do update-alternatives.

Solução:

  1. Verifique a lista de alternativas:
    sudo update-alternatives --config gcc
    
  1. Selecione o número correto.
  2. Atualize o link simbólico.
    sudo ln -sf /usr/bin/gcc-9 /usr/bin/gcc
    

Resumo

Nesta seção, explicamos erros comuns que ocorrem durante a instalação e uso do GCC, e suas estratégias de solução.

Principais conclusões:

  • Erros de instalação podem ser resolvidos frequentemente atualizando repositórios ou ajustando configurações de repositórios.
  • Erros de compilação podem ser resolvidos verificando o código e opções de link.
  • Erros de execução frequentemente surgem de problemas de permissão ou bibliotecas ausentes.
  • Problemas de alternância de versão podem ser tratados com links simbólicos e ajustes no update-alternatives.

7. FAQ

Como posso instalar a versão mais recente do GCC?

Pergunta:
Quero instalar a versão mais recente do GCC, mas o repositório padrão oferece apenas versões mais antigas. O que devo fazer?

Resposta:
Para instalar a versão mais recente do GCC, você pode adicionar um repositório PPA.

  1. Adicione o repositório PPA:
    sudo add-apt-repository ppa:ubuntu-toolchain-r/test
    
  1. Atualize a lista de pacotes:
    sudo apt update
    
  1. Instale a versão mais recente:
    sudo apt install gcc-12
    
  1. Verifique a versão:
    gcc --version
    

Como desinstalo o GCC?

Pergunta:
Quero desinstalar o GCC. Como devo prosseguir?

Resposta:
Você pode remover o GCC através dos seguintes comandos:

sudo apt remove gcc
sudo apt autoremove

Se você também quiser remover ferramentas relacionadas, adicione:

sudo apt remove build-essential

O que devo fazer se apenas versões mais antigas estiverem selecionáveis?

Pergunta:
Mesmo quando uso update-alternatives --config gcc, apenas versões mais antigas aparecem. Como posso adicionar uma versão mais nova?

Resposta:
Adicione manualmente a versão mais nova às configurações de alternativas.

  1. Instale a versão que você precisa:
    sudo apt install gcc-12
    
  1. Adicione-a manualmente às alternativas:
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 120
    
  1. Selecione a versão:
    sudo update-alternatives --config gcc
    

E se ocorrerem erros de dependência?

Pergunta:
Erros de dependência aparecem durante a instalação do GCC. Como posso resolvê-los?

Resposta:
Erros de dependência podem resultar do sistema não estar atualizado. Execute:

sudo apt update
sudo apt upgrade

Se isso não resolver, corrija automaticamente as dependências quebradas:

sudo apt --fix-broken install

Como usar uma versão específica do GCC para um projeto particular?

Pergunta:
Quero usar diferentes versões do GCC por projeto. Como posso configurar isso?

Resposta:
Crie um link simbólico dentro do diretório do projeto apontando para o binário GCC desejado.

  1. Crie o link local:
    ln -s /usr/bin/gcc-9 ./gcc
    
  1. Use-o localmente em comandos de compilação:
    ./gcc -o program program.c
    

O que devo fazer se ocorrer “command not found”?

Pergunta:
Mesmo tendo instalado o GCC, vejo “gcc: command not found.” O que devo fazer?

Resposta:
Primeiro, confirme a instalação:

dpkg -l | grep gcc

Se o GCC não estiver instalado, reinstale-o:

sudo apt install gcc

Se ainda falhar, verifique o link simbólico:

ls -l /usr/bin/gcc

Se o link estiver quebrado, corrija-o:

sudo ln -sf /usr/bin/gcc-10 /usr/bin/gcc

Resumo

Nesta seção, apresentamos perguntas frequentes e suas soluções concretas para o GCC.

Principais conclusões:

  • A versão mais recente pode ser instalada via repositórios PPA.
  • Desinstalação e gerenciamento de versão são facilmente tratados com update-alternatives .
  • Também fornecemos exemplos concretos de comandos para solução de problemas.

8. Conclusão e Próximos Passos

Resumo deste artigo

  1. Visão geral e papel do GCC
  • O GCC é um compilador poderoso que suporta múltiplas linguagens como C e C++.
  • No Ubuntu, ele pode ser facilmente instalado a partir do repositório oficial, tornando-o ideal para construir ambientes de desenvolvimento.
  1. Passos de instalação e preparação
  • Atualizamos o sistema e instalamos o pacote build-essential.
  • Também verificamos versões e lidamos com solução de problemas de dependências.
  1. Uso básico
  • Explicamos como criar, compilar e executar programas de exemplo.
  • Discutimos como responder a erros e usar opções de otimização.
  1. Gerenciando múltiplas versões e alternando
  • Explicamos como usar update-alternatives para alternar entre versões do GCC por projeto.
  1. Solução de problemas e FAQ
  • Cobrimos possíveis erros de instalação e uso e fornecemos soluções concretas.

Recursos adicionais

Aqui estão recursos para auxiliar no aprendizado adicional ou em aplicações:

  1. Documentação oficial do Ubuntu
  • Ubuntu Official Site fornece guias detalhados sobre gerenciamento de pacotes e ferramentas de desenvolvimento.
  1. Documentação oficial do GNU GCC
  1. Guias de console Linux
  • Linux Console publica informações de solução de problemas em vários tópicos do Linux.
  1. Sites de aprendizado e fóruns

Próximos passos

  1. Aplicar o GCC em projetos reais
  • Use o GCC em projetos reais e realize desenvolvimento mais avançado.
  1. Usar bibliotecas e extensões
  • Instale bibliotecas adicionais conforme necessário para estender os recursos do seu projeto.
  1. Aprender novas linguagens e ferramentas
  • Por meio do aprendizado de outras linguagens ou ferramentas de build, vise o avanço de habilidades.
  1. Participar da comunidade
  • Junte-se a fóruns ou projetos de código aberto, compartilhe conhecimento e desenvolva habilidades práticas de forma colaborativa.

Palavras finais

Neste artigo, explicamos passo a passo como instalar e usar o GCC no Ubuntu. Ele abrange tudo, desde os conceitos básicos até a solução de problemas, tornando fácil até para iniciantes configurar seu ambiente de desenvolvimento.

Uma nota final:
Use este artigo como referência para aplicar o GCC em seus próprios projetos, aproveite a programação e consulte a FAQ ou recursos adicionais se novas dúvidas surgirem.

No próximo artigo, pretendo cobrir os conceitos básicos de sintaxe C e C++ e técnicas de desenvolvimento avançadas. Fique ligado!