Что это такое?
Это графический интерфейс для gdb (отладчика GNU): вместо ввода команд вы ставите точки останова, смотрите стек вызовов и наглядно видите структуры данных прямо в браузере.
Это десктопная программа, которую нужно устанавливать, или что-то, что работает в браузере?
Ни то, ни другое: это не классическая десктопная программа и не сайт в интернете. Вы запускаете gdbgui из терминала, он поднимает локальный процесс, и интерфейс отладчика открывается новой вкладкой в вашем браузере.
Как его запустить?
Установите его как Python-пакет командой pip install gdbgui, затем выполните команду gdbgui в терминале — откроется новая вкладка браузера с интерфейсом. Программу, которую нужно отлаживать, можно передать как аргумент.
Сам gdb тоже нужно устанавливать отдельно?
Да — gdbgui это только оболочка поверх gdb, поэтому сам gdb должен быть установлен на вашем компьютере; интерфейс просто управляет им за вас.
Работает ли он на macOS, Windows и Linux?
Он должен работать везде, где есть Python и gdb — на Linux, macOS и Windows, потому что бэкенд это локальный Python-процесс, а фронтенд — обычная вкладка браузера.
Что вообще можно делать в интерфейсе?
Главные возможности — установка точек останова, просмотр стека и наглядное отображение структур данных. Это обычный процесс отладки в gdb, но в графическом виде вместо текстовых команд.
Там есть командная строка или только кнопки?
И то, и другое: интерфейс на React со встроенным терминалом xterm.js рядом с графическими элементами управления, и он общается с Python-бэкендом через вебсокеты (socket.io) — так что при желании можно вводить команды gdb напрямую.
Это бесплатно, и насколько проект проверенный?
Полностью бесплатный проект с открытым исходным кодом под лицензией GPL-3.0, больше 10 000 звёзд на GitHub; проект существует с 2016 года.
What are similar projects?
compiler-explorer, zenc, vConsole, rr, delve, Reverse-Engineering, kitty, pwndbg
