Seer — графический интерфейс GDB для Linux. (Эрни Пасвир [email protected])
Этот проект активно разрабатывается. Целью является создание простого, но приятного графического интерфейса для GDB.
Пожалуйста, сообщайте о любых ошибках или желаемых функциях на мою электронную почту или создайте задачу на моей странице проекта GitHub.
Seer можно установить либо из менеджера пакетов, либо из исходного кода.
Примечание
Перед установкой убедитесь, что требования соблюдены.
Линукс
С++17
gdb с интерпретатором "mi" (проверьте, запустив: gdb --interpreter=mi
)
CMake (3.1.0 или новее)
QT6
QT5
Доступно через следующие менеджеры пакетов:
pamac install seer
zypper install seergdb
(Рекомендуется) Seer можно собрать с помощью Qt6, следуя инструкциям ниже.
https://github.com/epasveer/seer/wiki/Building-Seer---Qt6
На данный момент его все еще можно собрать с помощью Qt5, следуя инструкциям ниже.
https://github.com/epasveer/seer/wiki/Building-Seer---Qt5
Посетите Wiki-страницу Seer на github.
Примеры различных представлений и диалогов Seer.
Основное представление Seer выглядит следующим образом:
Источник/Функция/Типы/Переменные/Библиотеки
Информация о переменной/регистре
Менеджер кода.
Точки останова, точки наблюдения, точки перехвата, точки печати, ручные команды GDB и журналы.
Информация о кадре стека.
Информация о теме.
Поддерживает режим обратной отладки Gdb.
Когда вызывается диалоговое окно открытия исполняемого файла, оно выглядит следующим образом:
Весь текстовый вывод исполняемого файла будет поступать в консоль Seer. Текстовый ввод для исполняемого файла также можно ввести через консоль.
Обычно Seer просто отображает исходный код в виде вкладок в диспетчере кода. Сборку программы также можно отобразить в виде вкладки.
Выберите «Просмотр->Просмотр сборки», и рядом с вкладками исходного кода появится дополнительная вкладка, показывающая выполняемую текущую сборку. Вот пример.
Как и вкладки исходного кода, точки останова можно установить на вкладке сборки. Текущая инструкция выделена.
Двойной щелчок по записям на вкладках «Точки останова» и «Кадры стека» покажет сборку для этих адресов.
Существуют горячие клавиши «Nexti» и «Stepi», определенные настройками вашей конфигурации. Обычно «Ctrl+F5» и «CTRL+F6». Использование «^F» на вкладке сборки откроет мощную панель поиска.
Функция сборки в Seer является новой. Не стесняйтесь предлагать изменения/функции.
Если просмотреть содержимое необработанной памяти в визуализаторе памяти, оно выглядит следующим образом:
Память | Разборка |
---|---|
Если посмотреть на содержимое массивов в визуализаторе массива, оно выглядит следующим образом:
Нормальный | Сплайн | Разброс |
---|---|---|
Два массива можно использовать в качестве графика XY. Например, этот простой массив «точек» формирует контур XY фигуры.
int main() {
int points[] = {50,1,20,91,97,35,2,35,79,91,50,1};
return 0;
}
Значения X | Значения Y | Значения XY |
---|---|---|
При просмотре содержимого структуры C/C++ или класса C++ в визуализаторе структур оно выглядит следующим образом. В этом примере показано содержимое «*this» для текущего класса C++, в котором находится Seer. Все члены структуры, которые являются базовыми типами, можно редактировать.
Существует также базовый визуализатор структур , который более легкий, но не может следовать за указателями и не подлежит редактированию.
При просмотре содержимого необработанной памяти, представляющего собой изображение, можно использовать визуализатор изображений.
Seer предназначен для легкого запуска программы для отладки из командной строки. GDB имеет несколько методов отладки программы. Так что Сир, естественно, тоже.
Зайдите в Wiki, чтобы увидеть все способы запуска Seer.
https://github.com/epasveer/seer/wiki/Starting-Seer
Отправьте электронное письмо на адрес [email protected], чтобы сообщить о любых ошибках или функциях. Или создайте задачу на моей странице проекта GitHub.