A proposito del debug dei simboli

Molti programmi e librerie sono compilati, da impostazione predefinita, con il debug dei simboli incluso (con l'opzione -g di gcc). Questo significa che, facendo il debug di un programma o libreria compilato con le informazioni di debug incluse, il debugger può darvi non solo indirizzi di memoria, ma anche nomi di routine e variabili.

L'inclusione di questi simboli di debug, tuttavia, aumenta significativamente le dimensioni di un programma o libreria. Per avere un idea dell'ammontare di spazio occupato da questi simboli, date un'occhiata sotto:

Le dimensioni possono in qualche modo variare in funzione di quale compilatore è stato usato e quale libreria C, ma quando si confrontano programmi con e senza i simboli di debug, la differenza di solito sarà di un fattore tra 2 e 5.

Dal momento che la maggior parte delle persone probabilmente non userà mai un debugger sul suo software di sistema, è possibile guadagnare un sacco di spazio disco rimuovendo questi simboli. La prossima sezione mostrerà come eliminare tutti i simboli di debug da tutti i programmi e le librerie. Informazioni su altri modi di ottimizzare il vostro sistema si possono trovare all'hint su http://www.linuxfromscratch.org/hints/downloads/files/optimization.txt.