Home - vexide/v5gdb GitHub Wiki
Welcome to the v5gdb user manual! This guide will help you set up a debugger for your VEX V5 project.
Disclaimer
v5gdb is alpha software, so details are subject to change. Currently, v5gdb only supports Rust (vexide) and C++ (PROS) programs.
The VEXcode framework is not supported at this time.
Getting Started
If you're new to v5gdb and use the vexide framework (Rust), please read our installation and setup guide for Rust projects.
If you use the PROS framework (C++), there's an installation and setup guide for C++ (PROS) projects too.
Once you've set up v5gdb in your project, you can optionally configure it to connect with VS Code.
If you decide to use GDB in the terminal, here are some common commands you may find helpful:
layout srcwill show you what code is currently running. After running the above command,focus cmdwill let you use the up and down arrow keys to quickly select a previous command.break fibwill set a breakpoint on a function named "fib", andbreak main.rs:15will put a breakpoint on line 15 ofmain.rs.stepwill step execution forward by an single line of code.nextwill step execution forward by an single line of code, and "jump over" function calls.monitor helpwill show the special commands specific to the vexide debugger.contwill exit the debug console and continue execution as normal. The debug console session will resume if a breakpoint is hit.quitwill quit the debugger.info localswill show you the values of all the variables in the current function.info argswill show you the values of all the parameters passed to the current function.info frametells you what function is currently running and what file/line number you're on.backtracetells you what function called the current function, and what function called that one, and so on.printcan be used to print out certain variables or call functions, like this:- Call a function:
print my_crate::calculate_number(30, 100, 4) - Print a variable or expression:
print kp * error
- Call a function:
finishwill skip to the end of the current function.
Internal documentation
Click here to view the v5gdb internal documentation.
Support
If you have questions about v5gdb, please send us feedback in our discord server.