View Full Version : dubug in gcc
BiggDarknet
14-03-2007, 10:38
ciao a tutti!
in questi ultimi giorni sono in balìa del gcc.....sono riuscito ad imparare +o- tutte le basi,tranne una cosa...IL DEBUG!!:bsod: come si fa a debuggare con gcc???in giro per internet ho trovato che bisogna creare un makefile con il flag -g1 o -g2.L'ho fatto,ma non mi cambia nulla!!...
grazie mille
ciao
ciao a tutti!
in questi ultimi giorni sono in balìa del gcc.....sono riuscito ad imparare +o- tutte le basi,tranne una cosa...IL DEBUG!!:bsod: come si fa a debuggare con gcc???in giro per internet ho trovato che bisogna creare un makefile con il flag -g1 o -g2.L'ho fatto,ma non mi cambia nulla!!...
grazie mille
ciaoAlt! gcc è solo il compilatore. Il debugger "standard" in Linux è "gdb".
Ammettiamo di avere il classico hello world:
#include <stdio.h>
int main (void)
{
printf ("Hello world\n");
return 0;
}Compila con:
gcc -g -o hello hello.c
quindi fai:
gdb hello
e ti apparirà il prompt del gdb. Ora fai:
break main
(che puoi abbreviare con "b main", per mettere un breakpoint sul main() )
run
(che puoi abbreviare con "r", per avviare)
next
(che puoi abbreviare con "n", per andare passo passo)
Nota che il gdb ha una marea di comandi.
se poi vuoi stare un po comodo evitando di impararti mille comandi a memoria:
http://sources.redhat.com/insight/
Se parliamo di front-end grafici, c'è anche DDD (http://www.gnu.org/software/ddd/), che personalmente non ho mai usato, quindi non saprei dire se è valido o meno.
trallallero
14-03-2007, 15:51
Se parliamo di front-end grafici, c'è anche DDD (http://www.gnu.org/software/ddd/), che personalmente non ho mai usato, quindi non saprei dire se è valido o meno.
io l'ho usato e mi é sembrato valido.
Certo é che qui abbiamo dei sistemi antiquati quindi qualsiasi programma grafico sembra un lusso :rolleyes:
BiggDarknet
14-03-2007, 16:16
...Nota che il gdb ha una marea di comandi.
grazie mille davvero x l'aiuto!!
ho perfettamente capito tutto...solo una cosa:non c'è un modo per far eseguire il prog da un break point ad un altro??(nei cicli for mi è di vitale importanza...:stordita: )
ilsensine
14-03-2007, 16:18
Metti i due breakpoint e dopo il primo esegui "cont".
BiggDarknet
14-03-2007, 16:25
SPETTACOLO!!
proprio quello di cui avevo bisogno.....grazie a tutti!:gluglu:
trallallero
14-03-2007, 20:29
SPETTACOLO!!
proprio quello di cui avevo bisogno.....grazie a tutti!:gluglu:
dopo aver imparato da shell, che serve sempre come esperienza, ti consiglio di installarlo il ddd, è tutta un'altra cosa ;) tanto si appoggia al gdb quindi sei già un passo avanti :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.