LINUX.ORG.RU

Отладчик GDB


0

0

Программа на С. Компиляция исходника с параметром -g : $ cc -g -o prog prog.c - создает исполняемый файл большего размера, т.е. отладочная информация помещается в файл. Далее, при вызове отладчика : $ gdb prog - оболочка ничего не находит. Команда :$ man gdb говорит, что руководства нет. Похоже, отладчика в системе нет. Откуда тогда отладочная информация в исполняемом файле?


Отладчик читает информацию, помещаемую компилятором в бинарные файлы при сборке с `-g`.

Sphinx ★★☆☆
()
Ответ на: комментарий от Sphinx

хе-хе, тогда уж отладчик читает информацию из специального сегмента в бинера. А чем их пишут, это уже его не очень сильно волнует.

у того же gcc есть -ggdb; -gдругойотладчик

так же, стоит знать что gcc может давать разный уровень отладочной информации. -g0, -g1, -g2, -g3... естественно можно писать -ggdb3 или -gvms1

catap ★★★★★
()
Ответ на: комментарий от xorik

В том то и дело...Судя по размеру исполняемого файла, в сравнении с результатом без опции -g, отладчик в системе присутствует. Но найти его для дальнейшего применения - получения от него более подробной информации, - не могу. Оболочка не понимает, о чем идет речь.Так его в системе НЕТ? Справки по нему в системе тоже нет.

can
() автор топика
Ответ на: комментарий от can

Ещё раз: наличие отладчика GDB в системе
не влияет на возможность собирать бинари
с отладочной информацией.

Sphinx ★★☆☆
()
Ответ на: комментарий от can

> А чем их пишут, это уже его не очень сильно волнует.

Я не утверждал обратного.

Sphinx ★★☆☆
()
Ответ на: комментарий от can

Пишет этот сегмент компилятор а не отладчик. Дядя, вы нас тролите так толсто?

catap ★★★★★
()

sudo apt-get install gdb (или какой там у вас дистрибутив) пробовали???

drakmail ★★★★
()

>Откуда тогда отладочная информация в исполняемом файле?

ее добавил компилятор.
нужно установить в систему gdb, а по первости наверно лучше ddd

xtron
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.