Skip to content
 
 

Repository files navigation

GDB DAP

This extension requires at least GDB 15.2.

You can get GDB for Windows from https://github.com/ssbssa/gdb or from MSYS2.

By default, the extension finds gdb in PATH. You can instead set gdb-dap.executable-path, or use debugAdapterExecutable in an individual launch configuration. gdb-dap.arguments and gdb-dap.environment configure the GDB process globally; debugAdapterArgs and debugAdapterEnv override them for one launch configuration.

Extension diagnostics are available in the GDB-DAP output channel. Set gdb-dap.log-path to write GDB's DAP log to a particular file, or enable gdb-dap.captureSessionLogs to create a separate log for each session.

Launch configuration

  • args: Command-line arguments passed to the inferior. See Arguments.
  • cwd: GDB's working directory, inherited by the inferior. See Working Directory.
  • env: The inferior's environment as an object containing string values. See Environment.
  • program: The program to use, corresponding to GDB's file command. See Files.
  • stopAtBeginningOfMainSubprogram: When true, sets a temporary breakpoint at the main procedure, like GDB's start command.
  • stopOnEntry: When true, sets a temporary breakpoint at the first instruction, like GDB's starti command.

Attach configuration

  • pid: The process ID to attach to. See Attach.
  • program: The program to use. This is particularly useful when GDB cannot infer the program for a remote target.
  • target: The argument passed to GDB's target remote command. See Connecting.

Launching through a URI

A debug session can be started with a vscode://OlegTolmatcev.gdb-dap/start URI. A complete URL-encoded JSON launch configuration can be supplied in the config parameter. Common fields can also be supplied separately:

vscode://OlegTolmatcev.gdb-dap/start?program=/tmp/a.out&args=one&args=two
vscode://OlegTolmatcev.gdb-dap/start?request=attach&pid=1234

The supported individual parameters are name, request, program, cwd, target, pid, and repeated args values.

Releases

Packages

Contributors

Languages