[Lldb-commits] [lldb] [lldb-dap][docs] Improve README (PR #109266)
via lldb-commits
lldb-commits at lists.llvm.org
Thu Sep 19 10:54:42 PDT 2024
================
@@ -1,71 +1,30 @@
# LLDB DAP
-## `lldb-dap` Configurations
+## Procuring the `lldb-dap` binary
-The extension requires the `lldb-dap` (formerly `lldb-vscode`) binary. It is a
-command line tool that implements the [Debug Adapter
-Protocol](https://microsoft.github.io/debug-adapter-protocol/). It is used to power the Visual Studio Code extension but can also be used with other IDEs and editors that support DAP.
-The protocol is easy to run remotely and also can allow other tools and IDEs to
-get a full featured debugger with a well defined protocol.
+The extension requires the `lldb-dap` (formerly `lldb-vscode`) binary.
+This binary is not currently packaged with the VS-Code extension.
-## Launching & Attaching Configuration
+There are multiple ways to obtain this binary:
+* build it from source (see [LLDB's build instructions](https://lldb.llvm.org/resources/build.html))
+* download it one of the relase packages from the [LLVM release page](https://github.com/llvm/llvm-project/releases/). The `LLVM-19.1.0-{operating_system}.tar.xz` packages contain a prebuilt `lldb-dap` binary.
+* contact your toolchain vendor
-Launching to attaching require you to create a [launch configuration](https://code.visualstudio.com/Docs/editor/debugging#_launch-configurations).
-This file defines arguments that get passed to `lldb-dap` and the configuration settings control how the launch or attach happens.
-
-### Launch Configuration Settings
-
-When you launch a program with Visual Studio Code you will need to create a [launch.json](https://code.visualstudio.com/Docs/editor/debugging#_launch-configurations)
-file that defines how your program will be run. The JSON configuration file can contain the following `lldb-dap` specific launch key/value pairs:
-
-|parameter |type|req | |
-|-------------------|----|:--:|---------|
-|**name** |string|Y| A configuration name that will be displayed in the IDE.
-|**type** |string|Y| Must be "lldb-dap".
-|**request** |string|Y| Must be "launch".
-|**program** |string|Y| Path to the executable to launch.
-|**args** |[string]|| An array of command line argument strings to be passed to the program being launched.
-|**cwd** |string| | The program working directory.
-|**env** |dictionary| | Environment variables to set when launching the program. The format of each environment variable string is "VAR=VALUE" for environment variables with values or just "VAR" for environment variables with no values.
-|**stopOnEntry** |boolean| | Whether to stop program immediately after launching.
-|**initCommands** |[string]| | LLDB commands executed upon debugger startup prior to creating the LLDB target. Commands and command output will be sent to the debugger console when they are executed.
-|**preRunCommands** |[string]| | LLDB commands executed just before launching after the LLDB target has been created. Commands and command output will be sent to the debugger console when they are executed.
-|**stopCommands** |[string]| | LLDB commands executed just after each stop. Commands and command output will be sent to the debugger console when they are executed.
-|**launchCommands** |[string]| | LLDB commands executed to launch the program. Commands and command output will be sent to the debugger console when they are executed.
-|**exitCommands** |[string]| | LLDB commands executed when the program exits. Commands and command output will be sent to the debugger console when they are executed.
-|**terminateCommands** |[string]| | LLDB commands executed when the debugging session ends. Commands and command output will be sent to the debugger console when they are executed.
-|**sourceMap** |[string[2]]| | Specify an array of path re-mappings. Each element in the array must be a two element array containing a source and destination pathname.
-|**debuggerRoot** | string| |Specify a working directory to use when launching lldb-dap. If the debug information in your executable contains relative paths, this option can be used so that `lldb-dap` can find source files and object files that have relative paths.
-
-### Attaching Settings
-
-When attaching to a process using LLDB you can attach in a few ways
+By default, the VS-Code extension will expect to find `lldb-dap` in your `PATH`.
+Alternatively, you can explictly specify the location of the `lldb-dap` binary using the `lldb-dap.executable-path` setting.
-1. Attach to an existing process using the process ID
-2. Attach to an existing process by name
-3. Attach by name by waiting for the next instance of a process to launch
+### Usage with other editors
----------------
jeffreytan81 wrote:
other "IDEs"?
https://github.com/llvm/llvm-project/pull/109266
More information about the lldb-commits
mailing list