Отладочные символы

Отладочные символы

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

При отладке программы или библиотеки, скомпилированной с отладочной информацией, отладчик предоставляет не только адреса в памяти, но и имена алгоритмов и переменных.

Однако включение символов отладки значительно увеличивает размер программы или библиотеки. Для того, чтобы получить представление о размере отладочных символов, взглянем на пример:

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

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

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

файлы glibc и gcc скомпилированная без отладочных символов: 16 MB

Размеры могут различаться в зависимости от использованного компилятора Си и библиотеки. При сопоставлении размера программы, скомпилированной с отладочными символами и без них, разница составляет примерно 2 – 5 раз.

Так как большинство пользователей никогда не используют отладчик, удаление этих символов позволит значительно сэкономить дисковое пространство.

Для удаления символов отладки из бинарного файла (файл a.out или бинарный файл ELF), выполните strip –strip-debug filename. Допускается использование символа * для обработки нескольких файлов (например, strip –strip-debug $LFS/static/bin/*).

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

15.5. Отладочные инструменты

Из книги автора

15.5. Отладочные инструменты Помимо GDB и различных ловушек в исходном коде, которые вы используете для общей отладки, имеется ряд полезных пакетов, которые могут помочь обнаружить определенные разновидности проблем. Поскольку управление динамической памятью является в


Вступление: стандартные символы и символы Unicode

Из книги автора

Вступление: стандартные символы и символы Unicode Прежде чем двигаться дальше, необходимо кратко объяснить, как Windows обрабатывает символы и различает 8-битовые, 16-битовые и обобщенные символы. Эта тема весьма обширна и выходит за рамки данной книги, поэтому мы не будем


2.2. Отладочные действия

Из книги автора

2.2. Отладочные действия Существует набор базовых действий, позволяющих пользователю осуществлять контроль за выполнением отлаживаемой задачи. Эти действия можно классифицировать следующим образом:• предварительные действия отладчика;• прерывание выполнения


Символы

Из книги автора

Символы СимволС помощью кнопки Символ вы можете вставить в текст всякие символы, которых нет на клавиатуре. Список некоторых особо популярных символов открывается сразу при щелчке на этой кнопке. Среди них значки евро, фунта стерлингов, некоторые греческие буквы и т. д.


6.1. Символы

Из книги автора

6.1. Символы Символ в Ruby — это экземпляр класса Symbol. Синтаксически он обычно обозначается двоеточием (:), за которым следует идентификатор.Символ похож на строку, он тоже соответствует последовательности символов. Отличие от строки состоит в том, что у каждого символа есть


6.1.1. Символы как перечисления

Из книги автора

6.1.1. Символы как перечисления В языке Pascal и в поздних версиях С есть понятие перечисляемого типа. В Ruby ничего подобного быть не может, ведь никакого контроля типов не производится. Но символы часто используются как мнемонические имена; стороны света можно было бы


6.1.2. Символы как метазначения

Из книги автора

6.1.2. Символы как метазначения Мы нередко пользуемся исключениями, чтобы уйти от кодов возврата. Но никто не мешает возвращать коды ошибки, если вам так хочется. К тому же в Ruby метод может возвращать более одного значения.В таком механизме часто возникает необходимость.


Символы

Из книги автора

Символы Эти знаки соответствуют типографским символам, таким, как А, &, + и т. п. Обычно под каждый символ отводится 1 байт памяти.Char: ключевое слово, используемое для указания данных этого типа. Данные этих типов могут принимать положительные и отрицательные


1. Металингвистические символы

Из книги автора

1. Металингвистические символы При описании синтаксических конструкций, использующихся в записи оператора создания базового отношения на псевдокоде, применяются различные металингвистические символы. Это всевозможные открывающие и закрывающие скобки, разнообразные


Пробельные символы

Из книги автора

Пробельные символы Символы пробел, табуляция, перевод строки, возврат каретки, новая страница, вертикальная табуляция и новая строка называются пробельными, поскольку они имеют то же самое назначение, что и пробелы между словами и строками в тексте на естественном языке.


Специальные символы

Из книги автора

Специальные символы Картинками мы балуем документ сравнительно редко, а вот к услугам специальных символов приходится прибегать куда чаще. «Специальными» мы называем те символы, которые не указаны на нашей клавиатуре. И неважно, что это – значки арабской вязи, китайские


Специальные символы

Из книги автора

Специальные символы Элементы (ключевые слова, параметры), которые обязательны во всех случаях, появляются без каких-либо дополнительных пометок, они выделены таким шрифтом, как и весь код в книге. В предыдущем примере ключевые слова SELECT и FROM являются обязательными для


6.1.3. Форматируем символы

Из книги автора

6.1.3. Форматируем символы Для выполнения заданий нам понадобится материал разд. 5.1.4 и 5.1.5. Задание № 11. Открыть файл упр. pages, перейти на пустую страницу документа, вставив разрыв в конце последней строки аналогично предыдущему разделу.2. Набрать с клавиатуры фамилию, имя,