Подтвердить что ты не робот

Как вы можете достичь такого же уровня эффективности с помощью gdb, как и с визуальным отладчиком?

Я знаю, что это похоже на ересь, но я просто не вижу, как использование gdb может быть более эффективным, при ежедневном использовании отладки (не расширенный отладчик и отладка протоколов), чем визуальный отладчик.

Я родом из фона .Net(любовь к окружающей среде ненавидят менталитет), а за прошлый купол лет перешел на PHP и С++. Я сейчас разрабатываю проект на С++, используя Eclipse, и ненавижу, насколько тяжел редактор, поэтому я перешел в Textmate. Но отладка настолько неудобна. Я использую gdb, но пропустите визуальный отладчик, который намного проще и эффективнее.

И все же каждый говорит - научитесь правильно использовать gdb! Поэтому я спрашиваю: как использовать gdb правильно и эффективно?

4b9b3361

Ответ 1

Что касается меня, я всегда использую gdb TUI mode. Из руководства gdb:

Текстовый пользовательский интерфейс gdb (TUI) является интерфейс терминала, который использует curses library, чтобы показать источник файл, сборка, программа регистры и команды gdb в отдельных текстовые окна. Режим TUI поддерживается только на платформах, где подходящая версия библиотеки curses доступен.

Он приносит некоторую визуальную отладку в gdb, и это достаточно для меня. Обычно я запускаю gdb в обычном режиме командной строки, отслеживаю обратные трассировки и устанавливаю в нем точки останова. Когда я хочу посмотреть исходный код, я перехожу в режим TUI с привязкой клавиш C-x C-a и снова переключаюсь назад, чтобы посмотреть обратные трассировки. Это встроенная готовая к использованию функция gdb. Вам не нужно использовать какое-либо дополнительное программное обеспечение, такое как KDevelop или Emacs.

Ответ 2

Вы можете использовать gdb с IDE, например KDevelop. У этого есть визуальный интерфейс, который помогает.
Или GDB с Emacs. Он делает почти все, что может сделать графический отладчик и с легкостью.

Чтобы добавить, вы можете взглянуть на эту статью. Он рассказывает о некоторых приятных трюках.

Ответ 3

Вы можете попробовать qt-creatror, ​​который также имеет приятный и легкий визуальный интерфейс GDB.

Ответ 4

Как насчет DDD?

Ответ 5

Я использую netbeans для С++. Он интегрируется с gdb и дает вам визуальную отладку. Это не так хорошо, как Visual Studio, но это близко. Это чище и легче, чем Eclipse. Однако было нелегко получить все, что было настроено на Windows. Я могу предоставить некоторые указатели там, если они вам нужны.

Ответ 6

Возможно, gdb еще эффективнее. Он может использовать дампы ядра при отладке, чтобы воспроизвести ошибки, подобные необычным мертвым замкам. Он также может отлаживать запущенные процессы. Другие функции, такие как условные точки останова и недавно разработанное обратное исполнение, также делают выделение gdb.

Отказ от ответственности: я не использую визуальный отладчик, и я не очень уверен, поддерживают ли они выше.