Отладка DLL при помощи GDB

Вопросы использования сторонних (не входящих в состав FPC и Lazarus) утилит и библиотек.

Модератор: Модераторы

Ответить
Max Rusov
постоялец
Сообщения: 191
Зарегистрирован: 25.04.2009 15:46:03

Отладка DLL при помощи GDB

Сообщение Max Rusov »

Никак не получается научиться отлаживать DLL. Дано: основной процесс без debug-info, dll с debug-info. Dll грузится динамически.
пробовал 2 варианта:

1.
gdb Процесс
dll-symbols МояDLL

2.
gdb МояDLL
exec-file Процесс

В обоих вариантах после установки breakpoint'ов при попытке запуска получаю ошибку:

Cannot insert breakpoint 1. Error accessing memory address 0xXXX: Input/output error.

Предположительно, это из-за того что DLL еще не загружена. Но как же быть?
скалогрыз
долгожитель
Сообщения: 1804
Зарегистрирован: 03.09.2008 02:36:48

Сообщение скалогрыз »

Загрузка DLL в винде вызывает событие отладчика.
Так что есть вариант, что при подгрузке DLL-ки gdb останавливается.
Если не остонавливается, то скорее всего возможность такой остановки есть :)
воспользоваться ей!

ну и погуглить чуток:
http://www.h7.dion.ne.jp/~qemu-win/Debu ... s-en.html/
http://gcc.gnu.org/onlinedocs/gnat_ugn_ ... ectly.html
http://www.delorie.com/gnu/docs/gdb/gdb_145.html
Ответить