Есть ли альтернатива gdb для систем Linux?

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

11 ответов

Мне очень нравится EDB (отладчик Эвана).

У него приятное ощущение OllyDBG, и это было здорово, потому что я использовал его довольно много, когда все еще работал на платформе Windows.

EDB (Evan's Debugger) - это отладчик бинарного режима на основе QT4 с целью обеспечения удобства использования наравне с OllyDbg. Он использует архитектуру плагинов, поэтому добавление новых функций может быть сделано с легкостью. Текущий выпуск предназначен для Linux, но будущие выпуски будут ориентированы на большее количество платформ.

http://www.softpedia.com/screenshots/thumbs/EDB-Evan-s-Debugger-19734-thumb.png
(Кликабельно)

nemiver - отличный интерфейс для gdb (выглядит лучше, чем ddd imo, даже если он еще не настолько продвинут).

В Linux большая часть отладки выполняется через GDB. Однако, как уже упоминали другие, нет необходимости использовать GDB напрямую. Существуют различные варианты, некоторые из которых упоминались в предыдущих ответах:

  • Emacs (имеет внешний интерфейс GDB)
  • DDD (основанный на мотивах, несколько необычный графический интерфейс с отличными возможностями проверки данных)
  • Nemiver (интерфейс на базе GTK)
  • Затмение
  • Code:: Blocks
  • NetBeans, вероятно, может сделать это также
  • Анюта (Gnome IDE)

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

Солнца dbx от Sun Studio тоже работает в Linux.

Emacs также имеет отличный интерфейс для GDB.

Я не использовал его сам, поэтому я не могу комментировать плюсы и минусы, но одна коммерческая альтернатива - TotalView.

Существует также DDD, который дает вам интерфейс для GDB, но я думаю, вы уже пробовали / использовали это?

Для отладки ассемблерного кода есть ALD.

Здесь можно пойти по карьерной лестнице, но если у вас есть возможность использовать MDB Sun, особенно если вы используете много шаблонов и многопоточный код. Это лучше, чем GDB, если это ваша ситуация. С другой стороны, это не так здорово, если все, что вам нужно, это точки останова, в этом случае я бы придерживался GDB.

Один очень хороший интерфейс для GDB, о котором я не упомянул, это Insight.

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

Другие вопросы по тегам