linuxbog:program:vaerktoej-gvd
| Linux – Friheden til at programmere: Version 2.5.20050330 – 2020-12-31 | ||
|---|---|---|
| forrige | Kapitel 5. Programmørens værktøjskasse | næste |
5.6. GNU Visual Debugger
Hvis der er en fejl i et program som du ikke kan finde årsagen til, så kan
et fejlfindingsværktøj som GNU Visual Debugger (GVD) være nyttigt. Fidusen er at man kan køre programmet inde fra GVD der så holder øje med værdien af variable, status for forskellige parallelt kørende dele af programmet, hvilke funktioner og procedurer der er kaldt, og meget andet nyttigt. Ved at køre programmet i små skridt, og indimellem tjekke relevante data, kan man måske finde tydeligere spor efter fejlen.
Hvis GVD skal kunne hjælpe dig med at forstå hvad et program gør, er det
nødvendigt at bede oversætteren om at inkludere fejlfindingsinformation i det oversatte program. Hvis det for eksempel drejer sig om Ada-programmetfejlfindingseksempel.adb, kan det gøres med følgende kommando:<code>hven%gnatmake fejlfindingseksempel -cargs -g</code>
For alle oversættere der bygger på//GCC//er det flaget -g der gør at der bliver inkluderet
fejlfindingsinformation i det oversatte program.
Når du har et program der indeholder fejlfindingsinformation, kan du
starte GVD og indlæse programmet (herfejlfindingseksempelfra før) med kommandoen:<code>hven%gvd fejlfindingseksempel</code>
Når GVD kører vil dets vindue være delt op i fire dele: * Nederst er der en log over hvad der sker med programmet.
- I midten til venstre er der en oversigt over de kildetekstfiler
programmet er sammensat af.
- I midten til højre vises de kildetekstfiler du vælger (desværre kun
en ad gangen).
- Øverst er der en opslagstavle hvor du kan se udvalgte variables
værdier. Når GVD starter er opslagstavlen tom. Du vælger variablene
ved at klikke på dem med højre musetast nede i kildeteksten. Der fremkommer så en menu hvor et af punkterne er "Vis <variablens navn>". Når du vælger det, kommer der et lille vindue med variablen oppe på opslagstavlen.
Den vigtigste fidus ved et fejlfindingsprogram er nok at du kan vælge at
køre programmet én linje ad gangen. Hvis du har en anelse mere travlt eller allerede ved hvilken del af programmet du vil studere, kan du indsætte //stopklodser// i programmet. Det gør du ved at højreklikke på den linje i kildeteksten du vil stoppe ved, og vælge "Sæt stopklods på linje <linjenummer>" på menuen. Hvis du nu starter programmet (ved at tasteF2), vil programmet stoppe – men ikke afslutte – første gang det kommer til denne linje. Du kan nu gå en linje frem ad gangen medF5eller lade programmet køre videre – indtil det kommer til en anden stopklods – medF8.
linuxbog/program/vaerktoej-gvd.txt · Last modified: by 127.0.0.1
