Seer is a gui frontend to gdb for Linux, currentlyis under active development. Its goal is to be a simple but pleasing gdb graphical user interface.
Require
Linux
C++17
gdb with “mi” interpreter
CMake (3.10 or newer)
QT6
QT5
Version v1.17 will be the last Qt5 release. The next release will be v2.0 and will be based on Qt6. However, it can still be compiled with Qt5.
The main view of Seer looks like this:
source/function/type/variable/library
- A list of source/header files used in the program.
- Search for functions, types, and static variables. Double-clicking will open the source file.
- A list of shared libraries referenced by the program.
- A list of source/header files can be searched. this will”shrink” to display the list of files.
- Double-clicking on a file will open it in the code manager.
Variable/register information
- Display variable and register values.
- “Logger” – Logs the value of a variable. Enter manually or double-click the variable in a file opened in Code Manager.
- “Tracker” – Creates a list of variables to display the value of when gdb reaches a stopping point (step, next, finish, etc.). When the stopping point is reached, all variables in the list will display their possible new values.
- “Registers” – Displays the values of all cpu registers.
Code Manager.
- A large area in the middle of the Seer gui.
- The source file opens in this view.
- You can use ^F to search for text in a file.
- A variable can be added to the Logger by double-clicking on the variable name. Double-clicking and pressing the CTLR key will prefix the variable with “”. SHIFT-clicking will prepend an “&” to the variable. A CTRL+SHIFT double-click will add an “&” in front of the variable.
- By selecting the variable name and RMB and select “Add Variable to Tracker” to add variables to the “Tracker”.
- Variables can be added to the Memory Visualizer by selecting the variable name and RMB and selecting Add Variable to Memory Visualizer.
- Can be created on a specific line via RMB breakpoint/printpoint.
- You can press the RMB Execute to a specific line.
- Tabs in this view can be detached by double-clicking the tab.
Breakpoints, Watchpoints, Catchpoints, Printpoints, manual gdb commands, and logs
- Code Manager the area below.
- Manual commands. Enter gdb or gdbmi commands manually. These commands will be remembered for the next Seer.
- Breakpoint manager.create and manage Bbreakpoints.
- Watchpoint manager.create and manage watchpoints.watchpoint Monitor when variables are accessed (read, write, read/write).
- Catchpoint manager.create and manage catchpoints.catch point Stop executing C++ throw/rethrow/catch calls.
- Printpoint manager.create and manage printpoints.printpoint similar to breakpointbut it allows you to printpoint go print variable. See gdb’s “dprintf” call.
- GDB output. A log of any output from the gdb program itself.
- Seer output. A log of any output from the Seer program itself. as a diagnosis.
- Tabs in this view can be detached by double-clicking the tab.
Stack frame information.
- Stack frame list. Double-clicking on a frame changes the scope (current function).
- Stack frame arguments. For each frame,print Parameters passed to each function.
- Stack locals. For the current function,print The value of the local variable.
thread information.
- thread ID. List of all threads. Double-click on the thread ID to change the scope (current thread).
- Thread frames. For each thread, list its stack frames.
Support reverse debugging mode of Gdb.
- Turning on or off refers to command logging.
- Set the playback direction to forward or backward.
#Seer #homepage #documentation #downloads #gui #front #gdb #News Fast Delivery