Ir para o conteúdo

Programar em C: Configuração do Sistema Operativo

Este artigo pretende disponibilizar informações básicas que permitam configurar um sistema operativo para se começar a programar em C. São considerados os sistemas operativos (para PCs) mais comuns (Windows, GNU/Linux e OS X).

Ideia: Caso esteja à procura de documentação, tutoriais, ou outro tipo de referências para aprender a programar C (conteúdos que saem fora do âmbito deste artigo), sugerem-se os seguintes links:

Para se programar em C as ferramentas essenciais são um editor de texto (onde se escreverá o código), e um compilar (que converterá o código para um executável). Adicionalmente, ferramentas de automação da compilação (e.g. make) e um debuger, entre outros, também são úteis.

GNU/Linux

Nos sistemas GNU/Linux a generalidade das ferramentas de compilação estão habitualmente disponíveis através do gestor de pacotes da distribuição. Por exemplo, no Debian e seus derivados (onde se incluem o Ubuntu e o Mint) usamos o comando

sudo apt-get install build-essential

que nos instala o gcc, algumas bibliotecas básicas, e o make.

Relativamente ao editor existem diversas alternativas, sendo que qualquer editor de texto plano é suficiente. Importa, no entanto, referir que alguns editores disponibilizam funcionalidades de realce de sintaxe (coloração do código), que ajuda a melhorar a legibilidade do código, e até a detectar bugs básicos. As opções disponíveis vão desde o simples Gedit até poderosos IDEs como o Netbeans1, passando pelos típicos Vim e Emacs. Tal como para as ferramentas de compilação, os editores/IDEs estão muitas vezes disponíveis não gestores de pacotes das distribuições. Outra opção bastante popular é o Sublime Text (aplicação proprietária, com versão de avaliação gratuita).

OS X

A forma de disponibilização das ferramentas de compilação no OS X tem variado ao longo do tempo. Nas últimas versões, estas ferramentas são disponibilizadas através do pacote Command Line Tools, disponível nos downloads do portal Apple Developer. Em versões anteriores do OS X, estas ferramentas estavam disponíveis nos DVDs de instalação do sistema, ou através do Xcode (o IDE da Apple, disponível na App Store). O compilador fica disponível no Terminal através do comando gcc, embora nas versões mais recentes não seja o gcc o compilador instalado, mas sim o Clang.

Quanto ao editor, as alternativas referidas para GNU/Linux também são opção para OS X, embora alguns editores não estejam adaptados ao OS X (e.g. Gedit), e outros disponham de variantes especialmente adaptadas ao OS X (e.g. Vim/MacVim e Emacs/Aquamacs). Como já foi referido, a Apple também disponibiliza o seu IDE, o Xcode.

Windows

O Windows não é um ambiente tão propício à programação em C como os sistemas UNIX. Ainda assim, existem algumas alternativas para aqueles que desejam programar C em Windows. O gcc pode ser instalado através do MinGW.

Editores para Windows, para além dos já referidos para outros sistemas, incluem o Notepad++. O IDE Code::Blocks é outra opção, que até disponibiliza pacotes de instalação que incluem o gcc e o gdb (um debugger). Para aqueles que estão a iniciar a programação em C, recomenda-se a utilização do gcc como compilador. Ainda assim, uma outra opção passa por usar o Visual Studio, que também inclui o seu próprio compilador.

Comandos Básicos do GCC

O gcc é o compilador recomendado neste artigo. Na sua forma mais básica, o comando a usar para compilar um programa tem a forma

gcc -o <executavel> <ficheiro.c>

onde <executavel> é o nome que pretendem dar ao executável (que será gerado na compilação), e <ficheiro.c> é o nome (localização) do ficheiro com o código C. Se desejar, poderá indicar mais do que um ficheiro C para compilar num mesmo comando.

Os gcc aceita várias opções de compilação. Entre elas incluem-se opções para controlar que tipos de avisos queremos que o compilador nos mostre. São exemplos deste tipo de opções o -Wall e o -Wextra, cuja utilização se recomenda. Quando estamos a utilizar funções da biblioteca math.h, em alguns sistemas é necessário usar a opção de compilação -lm. Temos também opções que controlam o nível de optimização do código (-ON, em que tipicamente o N pode variar entre 0 e 3, sendo 0 o valor por omissão, e 3 o valor em que se obtém mais optimizações).


  1. O uso de IDEs para iniciantes é habitualmente desaconselhado.