6.59. Об отладочных символах

6.59. Об отладочных символах

Большинство программ и библиотек по умолчанию компилируются с символами отладки (с опцией -g для gcc). Это означает, что когда отлаживается программа или библиотека, которая была собрана с включением отладочной информации, то отладчик может передать вам не только адреса в памяти, но и имена переменных и функций.

Но исключение отладочных символов существенно уменьшает размер программы или библиотеки. Чтобы получить представление о том, сколько места занимает отладочная информация, посмотрите следующее:

  • бинарник bash с отладочными символами: 1200 KB

  • бинарник bash без отладочных символов: 480 KB

  • файлы Glibc и GCC (/lib и /usr/lib) с отладочными символами: 87 MB

  • файлы Glibc и GCC без отладочных символов: 16 MB

Размер может немного варьироваться в зависимости от используемых компилятора и библиотеки C. Но размер между программами и библиотеками, собранными с отладочной информацией и без таковой может различаться в 2-5 раз.

Большинство людей никогда не используют отладчик, и довольно много места на диске освободится при удалении отладочных символов. В следующей части будет показано, как удалить все отладочные символы из программ и библиотек. Дополнительная информация по оптимизации системы может быть найдена в http://www.linuxfromscratch.org/hints/downloads/files/optimization.txt.