Форум программистов, компьютерный форум, киберфорум
Наши страницы
Loafer
Войти
Регистрация
Восстановить пароль
Оценить эту запись

Debug символы и прочее

Запись от Loafer размещена 01.05.2018 в 15:07

Компиляция программы с добавлением отладочной информации в запускаемый файл (debug символы):
Bash
1
g++ gcc-debug.cpp -g -Og -o gcc-debug
По умолчанию на Linux-системах отладочная информация хранится в формате DWARF версии 4.
Разделение отладочной информации от остальной информации в ELF-файле происходит следующим образом:
Bash
1
2
3
objcopy --only-keep-debug ./gcc-debug ./gcc-debug.dbg
strip --strip-debug ./gcc-debug
objcopy --add-gnu-debuglink=./gcc-debug.dbg ./gcc-debug
Последняя команда добавляет ссылку в ELF-файл на debug символы. Этот шаг необходим только ради удобства отладки.
Запуск gdb с явным указанием бинарного файла, debug символов и директории с исходным кодом:
Bash
1
gdb -q -e ./gcc-debug -s ./gcc-debug.dbg -d .
Для справкиstrip - утилита для удаления символов (не только debug) из объектных файлов.
objcopy - утилита для копирования и перевода в другой тип объектных файлов. Использует библиотеку GNU BFD.
Размещено в C++
Просмотров 401 Комментарии 0
Всего комментариев 0
Комментарии
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru