## page was renamed from Valgrind
#format wiki
#LANGUAGE it
<
>
<>
= Introduzione =
'''Valgrind''' è una suite costituita da strumenti per il ''debugging'' e da programmi di ''profiling''. Ci sono tre strumenti:
* un '''rilevatore di errori di memoria''': ideale per la ricerca automatica dei ''segmentation faults'', degli errori sul bus e nella memoria, traccia l'uso di tutti i singoli bit nell'ambito dell'esecuzione di un programma e segnala le anomalie; il programma è in grado di scorgere se la memoria è usata prima di assumere un determinato valore, se fallata o usata due volte;
* un '''time profiler''';
* uno '''space profiler'''.
Riguardo il ''debugging'', il rilevatore di errori di memoria è uno strumento molto pratico.
= Preparativi =
Prima di procedere assicurarsi di avere installato i pacchetti con i simboli del [[Programmazione/Debug|debug]].
= Installazione =
Per installare il programma è sufficiente digitare [[AmministrazioneSistema/InstallareProgrammi|installare il pacchetto]] ''valgrind''.
Terminata l'installazione non resta che rimuovere i log obsoleti. Digitare il seguente comando:
{{{
rm valgrind.log.*
}}}
= Avvio del programma e preparazione del materiale per il bug report =
Per avviare il programma sotto il controllo di '''memcheck''' digitare il seguente comando:
{{{
G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind -v --tool=memcheck --leak-check=full --num-callers=40 --log-file=valgrind.log
}}}
Una volta avviato il programma si potrà compiere qualsiasi azione necessaria per riprodurre il ''crash'', dunque non resterà che compattare i file di log in un archivio [[AmministrazioneSistema/FormatiDiCompressione|compresso]] con il seguente comando:
{{{
tar -zcf valgrind-logs-.tar.gz valgrind.log.*
}}}
Ora sarà possibile allegare nel ''bug report'' l'output completo di '''valgrind''', contenuto nel file `valgrind-logs-.tar.gz`.
= Ulteriori risorse =
* [[https://wiki.ubuntu.com/Valgrind|Documento originale]]
----
CategoryProgrammazione