Ero sivun ”Gdb” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
(peruskäytt)
 
pEi muokkausyhteenvetoa
Rivi 1: Rivi 1:
Gdb (the GNU Debugger) on [[GNU]]-projektin debuggeri (virheenjäljitysohjelma). Sitä käytetään komentoriviltä ja alun opettelun jälkeen se on erittäin tehokas työkalu ohjelmistojen bugien etsimiseen.
Gdb (the GNU Debugger) on [[GNU]]-projektin debuggeri (virheenjäljitysohjelma). Sitä käytetään komentoriviltä ja alun opettelun jälkeen se on erittäin tehokas työkalu ohjelmistojen bugien etsimiseen.


Gdb:tä käytettäessä ohjelmaan on käännettävä debug-informaatiota. [[GCC]]:tä käytettäessä tämä onnistuu valitsimella -g:
== Ohjelman kääntäminen ==
Gdb:tä käytettäessä ohjelmaan on käännettävä debug-tietoja. [[GCC]]:tä käytettäessä tämä onnistuu valitsimella -g:
  gcc softa.c -o softa -g
  gcc softa.c -o softa -g



Versio 4. kesäkuuta 2006 kello 11.26

Gdb (the GNU Debugger) on GNU-projektin debuggeri (virheenjäljitysohjelma). Sitä käytetään komentoriviltä ja alun opettelun jälkeen se on erittäin tehokas työkalu ohjelmistojen bugien etsimiseen.

Ohjelman kääntäminen

Gdb:tä käytettäessä ohjelmaan on käännettävä debug-tietoja. GCC:tä käytettäessä tämä onnistuu valitsimella -g:

gcc softa.c -o softa -g

Käyttö

Gdb käynnistetään komennolla

gdb ./ohjelma

Jonka jälkeen Gdb:tä käytetään sen omilla komennoilla, joita esitellään seuraavassa. Komentoja ei tarvitse kirjoittaa kokonaan, vaan riittävä määrä alkua riittää jos komento on tällöin yksiselitteinen.

Ohjelman käynnistäminen

Ohjelma käynnistetään yksinkertaisesti komennolla run. Jos halutaan antaa ohjelmalle parametreja, ne kirjoitetaan komennon perään, esimerkiksi

run parametri1 parametri2

Keskeytyskohdan asettaminen

Ohjelman suoritus voidaan määrätä pysähtymään tietylle riville seuraavasti:

b tiedosto:rivi

Esimerkiksi

b main.cpp:45

Keskeyttäisi ohjelman suorituksen tiedoston main.cpp riville 45.

Pysäyttämisen voi laittaa tapahtumaan myös mikäli tietyn muuttujan arvo muuttuu:

watch muuttuja

Pysäytyskohdat ja tarkkailtavat muuttujat voi listata komennolla

i b

Lausekkeiden arvojen tutkiminen

Ohjelman suorituksen pysähdyttyä esim. keskeytyskohtaan tai ohjelman kaatumiseen, voidaan lausekkeiden arvoja tarkkailla print-komennolla:

print muuttuja

Tai esimerkiksi

p olio.Metodi()

Backtree

Backtree tarkoittaa listaa viimeksi kutsutuista funktioista ja niille välitetyistä parametreista. Tämä on erityisen hyödyllistä selvitettäessä syitä ohjelman kaatumiseen. Tämän tiedon saa näkyviin komennolla

bt

Lähdekoodin tutkiminen keskeytyskohdan ympäriltä

Keskeytyskohtaa voi tutkia komennolla list (tai l), joka tulostaa lähdekoodia keskeytyskohdan ympäriltä. Komennon toistaminen tulostaa lisää koodia kohdan alapuolelta.