8.3. Passando pelo código do programa com a GDB
Uma vez que o depurador GDB esteja anexado a um programa, você pode usar uma série de comandos para controlar a execução do programa.
Pré-requisitos
Você deve ter as informações de depuração necessárias disponíveis:
- O programa é compilado e construído com informações de depuração, ou
- Os pacotes de debuginfo relevantes são instalados
- A GDB deve ser anexada ao programa para ser depurada
Comandos GDB para passar através do código
r
(executado)-
Iniciar a execução do programa. Se
run
for executado com qualquer argumento, esses argumentos são passados ao executável como se o programa tivesse sido iniciado normalmente. Os usuários normalmente emitem este comando após definir os pontos de interrupção. start
-
Iniciar a execução do programa, mas parar no início da função principal do programa. Se
start
for executado com qualquer argumento, esses argumentos são passados ao executável como se o programa tivesse sido iniciado normalmente.
c
(continuar)Continuar a execução do programa a partir do estado atual. A execução do programa continuará até que uma das seguintes situações se torne realidade:
- Um ponto de parada é atingido.
- Uma condição especificada é satisfeita.
- Um sinal é recebido pelo programa.
- Ocorre um erro.
- O programa é encerrado.
n
(próximo)Continuar a execução do programa a partir do estado atual, até que a próxima linha de código no arquivo fonte atual seja alcançada. A execução do programa continuará até que uma das seguintes situações se torne realidade:
- Um ponto de parada é atingido.
- Uma condição especificada é satisfeita.
- Um sinal é recebido pelo programa.
- Ocorre um erro.
- O programa é encerrado.
s
(etapa)-
O comando
step
também suspende a execução em cada linha seqüencial de código no arquivo fonte atual. Entretanto, se a execução for atualmente interrompida em uma linha de código fonte contendo um function call, o GDB interrompe a execução após entrar na chamada de função (em vez de executá-la). until
location- Continuar a execução até o local de código especificado pela opção location ser alcançado.
fini
(acabamento)Retomar a execução do programa e interrompê-la quando a execução retornar de uma função. A execução do programa continuará até que uma das seguintes ações se torne realidade:
- Um ponto de parada é atingido.
- Uma condição especificada é satisfeita.
- Um sinal é recebido pelo programa.
- Ocorre um erro.
- O programa é encerrado.
q
(desistir)- Encerrar a execução e sair da GDB.
Recursos adicionais
- Seção 8.5, “Utilização de pontos de parada GDB para parar a execução em locais com código definido”
- Depuração com GDB
- Depuração com GDB