Depuració
La depuració d'una aplicació és una tasca que ens pot ajudar a esmenar errors de concepció i que ofereix al programador eines per a poder executar un programa pas a pas mentre es visualitza el valor de les variables.
Per poder depurar una aplicació en QDevelop s'han d'acomplir una sèrie de prerequisits:
- Tenir les llibreries de QT construides amb l'opció de debug. Sota Linux, aquestes llibreries ja ens venen construides tant en mode debug com en mode release, però si estem treballant en Windows serà necessari que les reconstruïm, ja que per defecte només estan en mode release.
- Tenir el programa gdb instal.lat. Sota Linux aquest ja s'inclou a l'instal.lar qualsevol paquet de desenvolupament de software, però per Windows és necessari que ens el baixem de la següent web i ens l'instal.lem: http://sourceware.org/gdb/.
- El projecte que sigui objecte de depuració ha d'estar en mode debug, ja que sinó, tal i com hem comentat en l'apartat de generació d'un projecte, l'aplicació no es construeix amb símbols de depuració.
Per aturar l'execució del programa en els punts que desitgem, ho farem introduint breakpoints en les línies del codi que vulguem que l'aplicació s'aturi mitjançant la tecla F9 o amb el menú . Un cop tinguem tots els breakpoints ja podem iniciar l'execució de l'aplicació des del menú o amb la tecla F5.
Quan el programa trobi un breakpoint, l'aplicació s'aturarà i a l'editor ens apareixerà una fletxa de color blau sobre la línia en que es trobi aquell moment l'execució.
En la següent figura tenim una captura de QDevelop depurant una aplicació:

A partir d'ara tenim diferents opcions per continuar amb la depuració de l'aplicació:
- Continuar pas a pas l'execució del programa mitjançant la tecla F10 o l'opció del menú corresponent.
- Continuar pas a pas l'execució i entrar dins les funcions (ho fem mitjançant F11) o sense entrar-hi (Shift + F11).
- Continuar l'execució del programa de manera normal fins que s'acabi d'executar o es trobi amb algun altre breakpoint. Ho fem mitjançant la tecla F6.
Josep Ramon Benet Bitrià
2008