Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 2 del 29/06/2007 11.00.59

Nascondi questo messaggio

Valgrind e' una suite di tool per il debugging e programmi di profiling. Ci sono tre tool: un rilevatore di errori di memoria, a time profiler, and a space profiler.

Riguardo il debugging, il rilevatore di errori di memoria e' un tool molto pratico.

Rilevatore errori di memoria

Il piu' importante di questi e' il rilevatore di errori di memoria, che traccia l'uso di tutti i singoli bit all'interno di un programma e in caso dovesse incontrare qualcosa di sospetto, lo segnala. Valgrind e' in grado di scorgere se la memoria e' usata prima can detect if memory is used before it has a value, memoria e' fallata, or la memoria e' usata due volte.

Cio' lo rende ideale per la ricerca automatica di segmentation faults, errori sul bus e falla generiche in memoria.

Assicurarsi di avere installati i pacchetti con i simboli del debug. E' possibile controllare tramite le seguenti istruzioni DebuggingProgramCrash.

  1. Assicurarsi che Valgrid sia installato

    sudo apt-get install valgrind
  2. Rimuovere i log obsoleti:

    rm valgrind.log.*
  3. Avviare il programma sotto il controllo di memcheck:

    G_SLICE=always-malloc G_DEBUG=gc-friendly  valgrind -v --tool=memcheck --leak-check=full --num-callers=40 --log-file=valgrind.log <program> <arguments>
  4. Il programma si avviera'. Perform any actions necessary to reproduce the crash
  5. Creare un archivio contenente i file di log (ovviamente non e' necessario se il file e' singolo):

    tar -zcf valgrind-logs-<program>.tar.gz valgrind.log.*
  6. Allegare l'output completo di Valgrind, contenuto in valgrind-logs-<program>.tar.gz, nel bug report.