====== Usare gdb (GNU Debug) ====== Se possibile installare anche il pacchetto **''-dbg''** del programma de debuggare. Questo contiene i simboli utilizzabili per stabilire breakpoint, ecc. L'elenco dei simboli viene installato in **''/usr/lib/debug/''** e corrisponde al percorso e nome del file eseguibile. Ecco un estratto: 08120380 B ddns_update_style 08078e20 T ddns_updates 080884e0 T decline_lease6 08086d20 T decline_leases Copiare il file sorgente del pezzo da debuggare nella directory corrente, ad esempio **''ddns.c''**, quindi lanciare **''gdb''**. Con questi tre comandi si dichiara qual'è l'eseguibile da debuggare, si imposta un breakpoint all'inizio di una funzione, e si manda in esecuzione il programma con gli opportuni argomenti. In questo esempio il demone dhcpd viene avviato con l'opzione -f, che impone al programma di girare in foreground senza effettuare il fork in background: file /usr/sbin/dhcpd b ddns_updates run -f -q eth0 Una volta raggiunto il breakpoint è possibile continuare l'esecuzione con **''next''**, **''step''**, **''continue''**.