Escolar Documentos
Profissional Documentos
Cultura Documentos
E-mails: henrique.brandao@larces.uece.br ;
joao.goncalves@larces.uece.br
Esse Tutorial tem como objetivo mostrar como realizar a compilao de um programa em C
via linha de comando no Ubuntu e alm disso, mostrar como pode ser feita a sua prpria biblioteca.
Quando realizamos esses procedimentos via linha de comando, podemos acompanhar como as
coisas funcionam por baixo, sendo assim, interessante se familiarizar com os comandos no Console.
Para comear, vamos abrir o console. No Ubuntu ele pode ser aberto pressionando Alt+F2 e
dentro da caixa dando o comando gnome-terminal. Na Figura abaixo pode ser visto o console, ele
semelhante ao prompt-comando do windows. Essa a linha de comando que ser utilizada para
programar.
Precisamos saber alguns comandos bsicos para utilizar o console, um deles o ls. Ele ir
listar todos os arquivos e pastas do diretrio atual em que voc est. Assim que voc abre o console,
ele iniciado na pasta home. Digitando ls e depois enter, a sada ser semelhate a essa:
Agora iremos criar uma pasta onde ser colocado os cdigos do seu programa. O comando
para criar pastas o mkdir. Digitando ento mkdir nome_da_pasta e dando um novo ls, aparecer
a nova pasta criada:
Outro comando importante o cd, que permite acessar diretrios. Agora entre na pasta
codes que acabou de ser criada, utilizando o comcando cd conforme a figura abaixo.
Pode ser percebido que agora o diretrio atual codes.
Para a escrita do programa, pode ser utilizado alguns editores de texto. Como exemplo, tem-
se o gedit, que semelhante ao bloco de notas do windows. Para abrir, execute Alt+F2, depois
digite gedit. Ento escreva o clssico hello world.
Salve o arquivo na pasta codes e volte ao console para fazer a compilao. O compilador
que ser utilizado o gcc que j vem pr-instalado no Ubuntu. A seguinte linha abaixo compila um
programa bsico em C:
O ltimo comando com o gcc listado, apenas fez a linkagem da main.o para gerar o
programa final, uma vez que ele j esta compilado.
Note que foi necessrio incluir o arquivo libcalc.h com as especificaes das funes.
Agora vamos reescrever a main para utilizar as funes implementadas.
Para fazer a linkagem, primeiramente, utilizamos a flag -c na qual compilar tanto a main
como a libcalc, assim gerando os arquivos main.o e libcalc.o. Depois disso, devemos fazer a
linkagem de todos os arquivos .o para gerar nosso programa final, conforme mostrado na Figura
abaixo.
- Alterar a forma de compilao dos arquivos libcalc.c e libcalc.h utilizando o gcc. Para isso,
utiliza-se os parmetros -shared, -fPIC e -o. A linha de compilao mostrada na figura abaixo.
- Copiar o arquivo compilado libcalc.so para o diretrio /usr/lib. Para realizar essa cpia,
voc utiliza o comando cp. Nele voc especifica o arquivo que quer copiar e o diretrio destino.
Tambm necessrio ter privilgios de super-usurio (root), assim tem que se usar o comando
sudo, e informar sua senha de usurio quando for pedido. A Figura abaixo ilustra esses passos.
- Copiar o arquivo libcalc.h para a pasta /usr/include, tambm utilizando o comando sudo. A
Figura abaixo ilustra esses passos.
Feito os procedimentos acima, agora pode-se utilizar a biblioteca em seu programa. Mas
antes, no arquivo main.c troque #include libcalc.h por #include <libcalc.h>. As aspas indicam
que o arquivo libcalc.h esta no diretrio atual. Utilizando <>, est sendo indicado que libcalc.h esta
no diretrio do sistema, ento no necessrio passar um caminho para ele. A linha de comando
mostrada na Figura abaixo mostra como compil-lo linkando-se tal biblioteca (como o arquivo main
foi alterado deve-se novamente fazer sua compilao).
Como pode ser visto, para compilar necessrio passar a flag -l, juntamente com o nome da
lib. Dessa forma, voc pode criar sua prpria lib e apenas disponibilizar o arquivo .so e o arquivo .h.
Assim outras pessoas podero usar a sua lib, mesmo no tendo o cdigo fonte .c.