Ключ | Назначение |
---|---|
-help или -h | Вывод краткого описания всех параметров |
-nx или -n | Не обрабатывать команды файла инициализации .gdbinit |
-q | Не выводить приветствие и информацию об авторских правах |
-batch | Командный режим. Отладчик возвращает 0, если были выполнены все команды, указанные в файле, заданном параметром -x (и файле .gdbinit, если его использование разрешено). Если же хотя бы одна из команд не выполнена, возвращается ненулевое значение |
-cd=каталог | Установить рабочий каталог (по умолчанию используется текущий каталог) |
-f или -fullname | Данная опция нужна, если вы планируете использовать интерфейс текстового процессора Emacs для отладки ваших программ с помощью gdb. Для более подробного описаний обратитесь к справочной системе |
-b bps (bits per second) | Установить скорость обмена информацией по последовательному интерфейсу, если вы отлаживаете вашу программу удаленно |
-tty=терминал | Установить терминал в качестве стандартного ввода и вывода для отлаживаемой программы. |
-s файл или -symbols=файл | Читает таблицу символов из указанного файла |
-write | Разрешить запись в исполняемые и core-файлы |
-e программа | Использовать указанную программу в качестве фильтра дампа |
-se=файл | Читать таблицу символов из указанного файла и использовать указанный файл в качестве исполнимого |
-core=файл или -с файл | Указать файл дампа |
-command=файл или -x файл | Выполнить указанные в файле команды (используется в командном режиме) |
-d каталог | Добавить каталог к списку поиска исходных текстов |
[prog|core|procID] | Последний параметр задает объект, который нужно отлаживать. Вы можете задать программу (prog), или дамп-файл (core), который будет создан в случае ошибки программы (Segmentation fault), или же подсоединиться к уже запущенному процессу (procID) |
-p PID | Подключиться к уже запущенному процессу (данная опция стала доступной в версии gdb 5.2) |
Чтобы использовать gdb для отладки вашей программы, нужно добавить в исполняемый файл отладочную информацию. Для этого откомпилируете вашу программу с опцией -g:
$ gcc -g -o prog prog.c
Данная опция включает отладочную информацию в родном для операционной системы формате, с которым может работать gdb.
Затем нужно вызвать gdb так:
$ gdb prog
Если после запуска вашей программы произошла ошибка и был создан дамп-файл (core), можно передать отладчику и этот файл:
$ gdb prog core
Можно также подключиться к уже запущенному процессу, для этого нужно передать его PID:
$ gdb 1111
Только убедитесь сначала в том, что у вас нет файла 1111, поскольку gdb сначала ищет исполняемый файл, затем core-файл, а уже затем PID.
После запуска отладчика в интерактивном режиме вы можете использовать команды, самые важные из которых перечислены в таблице 22.2. Об остальных можно узнать в справочной системе: man gdb.
Команды gdb Таблица 22.2
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии