Существует ли какая-либо интерактивная или более удобная версия GDB для отладки?


8

Существует ли какая-либо интерактивная или более удобная для пользователя версия (или замена) GDB для отладки?

Некоторые люди предлагали CGDB, но после нескольких тестов я обнаружил, что он глючит и работает нестабильно.

Ответы:


9

Есть несколько графических интерфейсов для GDB. GNU DDD и KGDB, чтобы упомянуть пару.

GNU DDD : введите описание изображения здесь

КГДБ : введите описание изображения здесь

Обновление: я не упомянул, что GDB на самом деле имеет встроенный текстовый пользовательский интерфейс, если вы запускаете его с gdb -tui: введите описание изображения здесь


1

Список внешних интерфейсов GDB можно найти по адресу http://sourceware.org/gdb/wiki/GDB%20Front%20Ends.

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


0

GDB Dashboard

https://github.com/cyrus-and/gdb-dashboard

Панель инструментов GDB использует официальный API GDB Python и печатает информацию, которую вы хотите, когда GDB останавливается, например, после a next, как собственная displayкоманда .

Против TUI:

  • более надежный, поскольку он просто печатает на стандартный вывод вместо того, чтобы перевести оболочку в более магическое состояние, например:

  • настраивается из Python: вы можете выбрать, что вы хотите выводить и насколько велика каждая секция в зависимости от того, что вы отлаживаете.

    Наиболее полезные представления уже реализованы: источник, сборка, регистры, стек, память, потоки, выражения ... но должно быть легко расширить его любой информацией, предоставляемой в GDB Python API.

    TUI позволяет показывать только два источника, сборку и регистры и все. Если, конечно, вы не хотите изменять его исходный код на C ;-)

введите описание изображения здесь

Я считаю, что GDB должен поставляться с такой настройкой из коробки и включаться по умолчанию, это привлечет гораздо больше пользователей таким образом.

О, и главный разработчик, Андреа Кардачи , был очень отзывчивым и потрясающим. Большой респект.

Смотрите также: /programming/209534/how-to-highlight-and-color-gdb-output-during-interactive-debugging/17341335#17341335


-1

Вы можете попробовать UltraGDB , это интерфейс GDB GUI и облегченная IDE на основе технологии Eclipse.


Только что проверил их репозиторий github; не обновлялся с июня 2015 года. Не кажется заслуживающим доверия.
Ал.Г.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.