Guião 1
Editores de texto
Eis os editores que se encontram instalados na máquina virtual:
- nano
- vim
Vídeos a ver antes da aula
Objetivos
- Aprender a compilação separada
- Fazer uma
makefilesimples - Correr um programa dentro do
gdb - Ser capaz de imprimir o conteúdo de variáveis
- Ser capaz de colocar um
breakpointnuma linha e numa função - Ser capaz de colocar um
breakpointcondicional
Passos a executar
- Vá buscar os dois ficheiros e coloque-os numa pasta;
- Crie uma
makefilepara compilar o programa; - Use a opção
-ggdbpara compilar com informação para odebugger; - Use a flag
-lmpara compilar com a biblioteca de matemática; - A sua
makefiledeve suportar a compilação separada; - Corra o programa dentro do
gdb; - Use o comando
help; - Veja o que fazem os comandos
runecontnogdb; - Use o comando
helppara cada um dos comandos dogdbque encontrar abaixo; - Liste o conteúdo da função
maine da funçãoraizesusando o comandolist; - Coloque um
breakpointna funçãoraizesusando o comando b; - Corra o programa e escreva 6 6 -12;
- Imprima o valor dos argumentos da função
raizesusando o comandop; - Saia do
gdb(em alternativa veja a ajuda comhelp breakpointspara ver como apagar umbreakpoint); - Volte a correr o programa dentro do
gdbmas coloque um breapoint na linha que imprime os valores com a funçãoprintf; - Imprima os valores das variáveis
r1er2; - Coloque um
breakpointna linha que atribui o valor à variávelr1; - Corra o programa dentro
gdbe introduza os valores 7 4 8; - Imprima o valor da variável
delta, o que se passa? - Consulte a ajuda dos comandos
displayewatch; - Usando o comando cond, faça com que o programa pare no
breakpointsó nos casos que identificou acima; - Volte o correr o programa dentro do
gdbcom os dois casos que testou acima e verifique que ele só pára quando é necessário.