Отладчик Linux C++

Я ищу идеальный отладчик Linux c++. Я не жду успеха, но поиск должен быть информативным.

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

язык макросов для gdb странный и не очень адаптивный. Просто посмотрите на код для Стэнфордского gdb utils для печати структур stl.

Короче я недоволен тем, что у меня есть.

Я недавно наткнулся на Ноль Ошибок. Похоже на серебряную пулю. Что думают об этом нынешние пользователи Zero Bugs?

кто-нибудь нашел другие хорошие решения проблемы отладчика Linux C++?

10 ответов


ветвь развития gdb (часть gdb Проект Арчер) добавляет поддержку Python в gdb (для замены макросов gdb). Есть серия сообщений в блоге здесь это широко охватывает начало работы с GDB с поддержкой Python и предлагает несколько учебных пособий по использованию Python для определения новых команд gdb и довольно печати структур данных c++.


UndoDB удивительно, если вы не против заплатить за это. Обратимая возможность намного быстрее, чем GDB. http://www.undo-software.com/


есть простые скрипты, которые позволяют сбрасывать структуры STL из GDB.

посмотреть здесь


вы можете попробовать NetBeans IDE 6.5 с gdb 6.8, это довольно мощный! http://www.netbeans.org/downloads/index.html


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


Я использую следующую среду:

http://ec-lang.org/

Это полная среда разработки для языка eC.

однако вы можете иметь проект только с файлами c или C++ без каких-либо файлов eC и создавать и отлаживать их с помощью IDE.

Это ближе всего вы когда-либо придете к "Borland C", как опыт под linux.

Он может быть установлен на Ubuntu / Debian со следующим команда:

sudo apt-get install ecere-sdk


Я не занимался разработкой C++ в Linux некоторое время, но когда я это сделал, мне повезло, когда KDevelop'отладчик С. Ничего революционного, но это позволит вам быстро изучить свойства объекта, как вы ищете.


попробовать ddd.


можно использовать затмение шаг через код C и c++, если вы ищете тип IDE отладчика вместо отладчика командной строки. Это не идеально, но я обнаружил, что он хорошо работает для людей, уже знакомых с инструментами отладки IDE.

Я также неравнодушен к отчет для обнаружения ошибок памяти.


Recentg gdb (например, версия 8.1) и g++ (например, GCC 7, в феврале 2018) могут отлаживать стандартные контейнеры C++ через скрипты Python.