Sugestão de estratégia para fazer este EP

Re: Sugestão de estratégia para fazer este EP

by Natan Costa Lima -
Number of replies: 0
Vou dar uma dica também.

Não sei quantos de vocês estão confortáveis com linux então vou dar umas dicas para compilar e depurar o programa.

Para editar o ep, abra um editor de texto qualquer, um bem simples e colorido é o gedit, para abri é só ir em:
aplicativos > acessórios > editor de texto

Depois de editar o código, abra o terminal:
aplicativos > acessórios > (terminal ou console)

Dica: clique a seta para cima depois de executar alguns comandos ou compilar seu programa no terminal.

Vá até a pasta onde está o ep com ajuda dos comandos cd e ls:
ls serve para ver os arquivos e pastas do diretório onde vc está.
cd serve para ir a um diretório.

Por exemplo se vc salvou o ep no Desktop basta fazer:
"cd Desktop"

Use ls depois disso para ver se o ep está mesmo lá.
"cd .." volta para o diretório anterior.

Se quiser saber onde vc está digite o comando:
pwd

Para compilar o programa use:
gcc -Wall -pedantic -O2 -ansi -U_FORTIFY_SOURCE SEU_EP.c -o NOME

Para rodar o programa é só fazer:
./NOME

Agora vem o melhor.
Se estiver dando segmentation fault principalmente, compile com a opção -g também.
gcc -Wall -pedantic -O2 -ansi -U_FORTIFY_SOURCE -g SEU_EP.c -o NOME

e para rodar o programa faça:
gdb NOME

gdb é um programa para depuração em c, quanto vc executar o comando anterior o terminal "entrará" no gdb.
Para rodar seu programa lá de dentro faça:
run

e seu programa começará a rodar do gdb, se ele der segfault agora o gdb te mostrará a linha onde isto aconteceu.

Vc pode ainda imprimir o valor das suas variáveis com o comando print:

Por exemplo se deu pau na função x e existia a variável a e o vetor b na função vc pode fazer de dentro do gdb depois que deu o pau:

print a
print b[0]
print b (isto te mostrará o endereço do vetor então não é tão útil assim).

se vc usar o comando:
bt full
O gdb mostrará o valor de todas as variáveis que ele consegue enxergar, claro que se tiver vários vetores a tela ficará meio ilegível, mas é bom para vcs visualizarem os lixos que têm nos vetores.

É claro que o gdb é muito mais poderoso que isto, mas aí vcs terão que dar uma lidinha também hehe

Ah
para sair dele é só digitar 'quit' ou usar o comando 'ctrl+d'

http://www.cs.cmu.edu/~gilpin/tutorial/
o google acha bastante coisas a respeito =)

Última coisa:
Para abrir os programas no linux você tem também a opção de apertar:
alt + F2
e digitar o programa que quiser

por exemplo:

firefox
gedit
gnome-terminal (terminal)
xterm (outro terminal)