LINUX.ORG.RU

Состоялся релиз GDB 7.0

 , ,


0

0

Свежий релиз GDB, свободного и открытого отладчика GNU, доступен для загрузки через анонимный FTP. GDB является отладчиком уровня кода для языков Ада, C, C++, Objective-C, Паскаль, и многих других. Среди основных возможностей следует отметить:

  • Поддержку скриптинга на Питоне
  • «Обратную отладку» с возможностью записи и повтора
  • Безостановочную отладку
  • Мульти-архитектурную отладку
  • Мульти-процессную отладку

В новой версии добавлены:

  • Интерфейс для компиляции «на лету»
  • Точки останова теперь можно задавать условиями
  • Поддержка Multi-byte и wide наборов символов
  • Новые модификаторы для команды «disassemble»
  • Автоматический возврат из библиотек, расположенных на удалённых ресурсах
  • Поддержка отладки подставляемых (inline) функций
  • Новый формат пакетов протокола удалённой отладки
  • Возможность считывать сжатые отладочные секции
  • Для Tru64 теперь доступна возможность переключения потоков
  • Она же теперь доступна и для Ada
  • Новые возможности в gdbserver
  • Новая команда для остановки при завершении выполнения системного вызова

Получить новую версию можно здесь.

>>> Подробности

★★★★★

Проверено: hibou ()

Re: Состоялся релиз GDB 7.0

Моя первая новость. :)

Жду критики.

jcd ★★★★★ ()

Re: Состоялся релиз GDB 7.0

> овый формат пакетов протокола удалённой отладки
Это означает, что теперь разные IDE, работающие с gdb, перестанут уметь отладку?

GArik ★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от GArik

Re: Состоялся релиз GDB 7.0

>Это означает, что теперь разные IDE, работающие с gdb, перестанут уметь отладку?

нет.

mono ★★★★★ ()

Re: Состоялся релиз GDB 7.0

/r/ гайд по отладке с помощью gdb для зеленых новичков.

tensai_cirno ★★★★★ ()

Re: Состоялся релиз GDB 7.0

Очень хороший отладчик, работает везде, на всем и для всего. Только вот жаль что большинство сред не могут воспользоваться его возможностями на все 100%, в некоторых элементарно нельзя даже тип watch-а изменить и прочие вкусняшки...

I-Love-Microsoft ★★★★★ ()

Re: Состоялся релиз GDB 7.0

Как там с libgdb кто-нибудь знает? Починили? Программы, работавшие с 6.0-6.2 заработают?

question4 ★★★★★ ()

Re: Состоялся релиз GDB 7.0

Кто-нить пробовал плюсы отлаживать, когда куча символов, шаблонов etc? Оно все так же тормозит и падает, или же теперь всё быстро и хорошо?

ikm ★★ ()

Re: Состоялся релиз GDB 7.0

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

Magister2k7 ()
Ответ на: Re: Состоялся релиз GDB 7.0 от ikm

Re: Состоялся релиз GDB 7.0

Я дико извиняюсь, но в каком год оно на плюсах тормозило и падало, когда куча символов, шаблонов etc? Особенно падало.

cthulhu ★☆ ()

Re: Состоялся релиз GDB 7.0

Эх, когда же оно STL начнет пережевывать...

anotheranonymous ()

Re: Состоялся релиз GDB 7.0

Эта замечательная новость — для раздела "GNU's Not Unix".

sinister666 ★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от jcd

Re: Состоялся релиз GDB 7.0

Какая тут критика, одно сплошная радость.

На 6-ке мои виндовые сокамерники глумливо хихикали, когда я пытался глядеть на wchar_t[] (да, в ~/.gdb/ у меня есть макрофункция для печати в gdb wchar_t-строк, как ASCII, но честную конвертацию, с поддержкой кодировок, через макро делать мне явно напряжно).

Ну и остальные изменения тоже радуют. Особенно, если они будут работать на arm32 :)

AlexM ★★★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от I-Love-Microsoft

Re: Состоялся релиз GDB 7.0

> Очень хороший отладчик, работает везде, на всем и для всего.

Ну, наши андроидные портировщики в этом месте ухмыляются.

> Только вот жаль что большинство сред не могут воспользоваться его возможностями на все 100%

На 100% невозможно по определению. Но там, где есть честный GDB'шный промпт, в принципе, уже можно жить. Кстати, для эклипса написали вполне удобоваримый набор модулей, "всё почти как настоящее".

AlexM ★★★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от ikm

Re: Состоялся релиз GDB 7.0

> Кто-нить пробовал плюсы отлаживать, когда куча символов, шаблонов etc?

На сложных шаблонах рвёт крышу даже у майкрософтового отладчика. Но сложные шаблоны не нужны ;) Александреску и его последователей - в сад.

P.S. На самом деле, наши отказались от большинства хитроумных шаблонов, т.к. MSVC генерил (а, может, и до сих пор генерит) из-за этого *огромные* бинари, что на pocket-size дивайсах неприемлемо. Ну а с андроидным и симбиановом C++'ом вообще всё не здорово было до последнего времени:)

AlexM ★★★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от AlexM

Re: Состоялся релиз GDB 7.0

>Ну, наши андроидные портировщики в этом месте ухмыляются.

кстати вам вопрос - хоть какой-нибудь дебаггер умеет отлаживать JNI-С++ андроидовский?

thevery ★★★★ ()

Re: Состоялся релиз GDB 7.0

> Мульти-процессную отладку

Поделитесь pls кто знает, как аттачиться к нескольким экземплярам одного приложения. В доке нашел только как отслеживать форки, но это не то.

YesSSS ★★★ ()

Re: Состоялся релиз GDB 7.0

Хм. Скрипты на питоне звучат заманчиво.

Farcaller ★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от I-Love-Microsoft

Re: Состоялся релиз GDB 7.0

> Очень хороший отладчик, работает везде, на всем и для всего.

А Java он стал поддерживать?

kda ★★★★★ ()

Re: Состоялся релиз GDB 7.0

Патч с поддержкой D уже больше года лежит. Одно время даже был в основном дереве портежей. А разрабы gdb так его и не осилили.

naryl ★★★★★ ()

Re: Состоялся релиз GDB 7.0

>релиз GDB 7.0

Блин, а и правда новый))) а я и не заметил когда два дня назад под arm-elf собирал. Собралось.. работает...

programmist ()
Ответ на: Re: Состоялся релиз GDB 7.0 от anotheranonymous

Re: Состоялся релиз GDB 7.0

> Это костыль на костыле, не нужно.

Это нормальное прямое решение.

> Ни одна IDE не подхватит это.

Это, как бе, проблемы ide, что они до сих пор не умеют толком настраиваться.

kemm ()

Re: Состоялся релиз GDB 7.0

хорошая работа для отладки приложений на плюсах.

Genuine ★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от kemm

Re: Состоялся релиз GDB 7.0

>Это нормальное прямое решение.
Только для слепца.

>Это, как бе, проблемы ide, что они до сих пор не умеют толком настраиваться.

Посмотрел бы та на отладчик VS.

anotheranonymous ()
Ответ на: Re: Состоялся релиз GDB 7.0 от tensai_cirno

Re: Состоялся релиз GDB 7.0

> /r/ гайд по отладке с помощью gdb для зеленых новичков.

Я когда-то то же самое спросил у одного разработчика.
Держи вырезку из одной моей переписки. Может пригодиться для начала.

============================================================

Here's the recipe to locate segmentation faults with gdb, as I sent it to a paco user that had troubles a few weeks ago:
(I guess you already know about all this stuff though)

1) Run "gdb". You will see a gdb prompt like this:
(gdb)

2) Load the executable:
(gdb) file /usr/bin/samba-server

3) Set the arguments that you want the executable to be run with:
(gdb) set args --foo --bar=BAR

4) Run the program inside gdb:
(gdb) run

5) It should end with the segfault. Then type this to aid locating the cause of the segfault:
(gdb) backtrace

That's *all* what I can do with gdb. That's a bit shameful, because gdb has a lot of interesting features that a good programmer should be awared of...

Spinal ()

Re: Состоялся релиз GDB 7.0

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

kto_tama ★★★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от naryl

Re: Состоялся релиз GDB 7.0

> Патч с поддержкой D уже больше года лежит

А языку Ди не нужны такие анахронизмы, как гдб - он уже достаточно высокоуровневый, чтобы не красноглазить^W лазить по коду в поисках утечек или переполнений.

matumba ★★★★★ ()

Re: Состоялся релиз GDB 7.0

> Интерфейс для компиляции "на лету"

можно будет отойти на шаг назад и пройти по коду с только что внесёнными изменениями? наконец-то?

hawai ()
Ответ на: Re: Состоялся релиз GDB 7.0 от kto_tama

Re: Состоялся релиз GDB 7.0

> вещь в себе
> для пальцатых хакеров

> на лоре по пальцам можно пересчитать тех , кто им пользуется


Ммм, альтернативы?

Bohtvaroh ★★★★ ()

Re: Состоялся релиз GDB 7.0

Закапывайте.

Поделие, нужное только быдло-monkey-кодерам на императивных недоязыках. Даже так: для uber-monkey-кодеров, осиливших чуть больше, чем отладочный printf.

Несмотря на то, что таковых тут полон тред, - они не нужны.

anonymous ()
Ответ на: Re: Состоялся релиз GDB 7.0 от Bohtvaroh

Re: Состоялся релиз GDB 7.0

> Ммм, альтернативы?

Альтернативы - писать на нормальных языках.

И ещё - думать перед написанием программы, а не после, ага. Сильно помогает. Попробуй хоть один раз - и поразишься тому, насколько сильно.

anonymous ()
Ответ на: Re: Состоялся релиз GDB 7.0 от anonymous

Re: Состоялся релиз GDB 7.0

> И ещё - думать перед написанием программы, а не после, ага. Сильно помогает. Попробуй хоть один раз - и поразишься тому, насколько сильно.

Толсто. :D

Bohtvaroh ★★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от anonymous

Re: Состоялся релиз GDB 7.0

> Поделие, нужное только быдло-monkey-кодерам на императивных недоязыках. Даже так: для uber-monkey-кодеров, осиливших чуть больше, чем отладочный printf.

OMFG. Бох на моём LORе. Только он знает что и кому нужно делать. И ещё знает слово "императивный". да.

hawai ()

Re: Состоялся релиз GDB 7.0

>> И ещё - думать перед написанием программы, а не после, ага. Сильно помогает. Попробуй хоть один раз - и поразишься тому, насколько сильно.

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

kto_tama ★★★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от kto_tama

Re: Состоялся релиз GDB 7.0

> а при переходе с офтопика на юникс нужно конечно многим пожертвовать

глупо этому радоваться и заносить в список достоинств

hawai ()
Ответ на: Re: Состоялся релиз GDB 7.0 от Spinal

Re: Состоялся релиз GDB 7.0

> (gdb) file /usr/bin/samba-server

Хех. Я как-то по старинке, просто запускаю gdb prog core, сразу набираю bt и готов. Вообще, для меня использование gdb как раз для анализа корок полезно. Отладку если там и делаю какую, то ручками n, s, frame 1, print str... -- отладку если делаю, то прямо на сервере, откуда там ide? А прежде чем на сервер программу поставить, кусочно _тестирую_, что куски работают как надо, на воркстейшене, и отладка не нужна.

Casus ★★★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от anonymous

Re: Состоялся релиз GDB 7.0

> Альтернативы - писать на нормальных языках.

Огласите весь список, ага :)

> И ещё - думать перед написанием программы, а не после, ага.

Думать помогает, да. Но учитывая, что наши тут сидят, UPX под андроид запинывают (в смысле, он есть, но не работает на требуемых версиях newlib), предложение "подумать перед" звучит как издевательство.

AlexM ★★★★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от AlexM

Re: Состоялся релиз GDB 7.0

> Огласите весь список, ага :)

Охотно. LISP, Scheme, OCaml, Haskell, Erlang. Ни одному из них не требуется костылей в виде специальных дебаггеров, в силу своей парадигмы. Но вот беда - monkey-кодерам даже не приходит в голову, что есть языки, отличные от жабки или крестов. А если и доведётся взглянуть на лисповый листинг, обезьянка сразу заверещит: "ой, сколько скобочек!!!111" - и вернётся к своей уютненькой императивщине.

Вообще, если у индивидуума возникает необходимость в дебаггинге, профайлинге, рефакторинге и прочих баззвордингах (да ещё и с помощью костылей типа GDB), то ошибки впору искать у индивидуума в ДНК, а самому индивидууму - искать новую работу. Например, сапожником.

anonymous ()
Ответ на: Re: Состоялся релиз GDB 7.0 от AlexM

Re: Состоялся релиз GDB 7.0

> UPX под андроид запинывают

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

anonymous ()
Ответ на: Re: Состоялся релиз GDB 7.0 от anonymous

Re: Состоялся релиз GDB 7.0

Что характерно, илита предпочитает сохранять анонимность.

anonymous ()

Re: Состоялся релиз GDB 7.0

Что бы там не говорили, новый релиз очень крут.
Релиз пока не пробовал, юзал из гита.
Скриптинг на питоне -- этого очень не хватало и это очень удобно. Лучше один раз попробовать. http://tromey.com/blog/?cat=17 -- сборник рецептов от разработчика + есть неплохая основная документация с API, генерируемая при сборке.

Питоновый скриптинг входит в project Archer (не знаю, насколько их код был смёрджен с релизным), созданный для улучшения работы gdb с с++ -- http://sourceware.org/gdb/wiki/ProjectArcher . Там же находится роадмэп и описание фич. И скринкаст :3

C: today latvians

anonymous ()
Ответ на: Re: Состоялся релиз GDB 7.0 от cthulhu

Re: Состоялся релиз GDB 7.0

> в каком год оно на плюсах тормозило и падало

В 2003, как минимум. С тех пор не пробовал, т.к. не использую gdb ни для чего, кроме bt для кордампов.

ikm ★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от anonymous

Re: Состоялся релиз GDB 7.0

> Что характерно, илита предпочитает сохранять анонимность.

"Илита" в каком классе учится, сколько по русскому?

unisky ★★ ()
Ответ на: Re: Состоялся релиз GDB 7.0 от anonymous

Re: Состоялся релиз GDB 7.0

LISP, Scheme

Как будто схема это не лисп.

и вернётся к своей уютненькой императивщине.

Лисп не подразумевает обязательного применения функциональной парадигмы. Functional programming means writing programs which work by returning values instead of by performing side-effects. Side-effects include destructive changes to objects (e.g. by rplaca) and assignments to variables (e.g. by setq). If side-effects are few and localized, programs become easier to read, test, and debug. Lisp programs have not always been written in this style, but over time Lisp and functional programming have gradually become inseparable.

anonymous ()

Re: Состоялся релиз GDB 7.0

Безостановочная откладка - "отлаживайте, негры, солнце ещё высоко".

anonymous ()

Re: Состоялся релиз GDB 7.0

Безостановочная откладка - "отлаживайте, негры, солнце ещё высоко".

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