488eff1234
It causes issues when starting subprocesses. Fixes https://github.com/microsoft/vscode-mono-debug/issues/68 |
||
---|---|---|
.github/workflows | ||
.vscode | ||
external | ||
images | ||
src | ||
testdata | ||
.eslintrc.yml | ||
.gitignore | ||
.gitmodules | ||
.vscodeignore | ||
CHANGELOG.md | ||
LICENSE.txt | ||
Makefile | ||
README.md | ||
ThirdPartyNotices.txt | ||
package-lock.json | ||
package.json | ||
package.nls.json |
README.md
VS Code Mono Debug
A simple VS Code debugger extension for the Mono VM. Its implementation was inspired by the SDB command line debugger.
Installing Mono
You can either download the latest Mono version for Linux, macOS, or Windows at the Mono project website or you can use your package manager.
- On OS X:
brew install mono
- On Ubuntu, Debian, Raspbian:
sudo apt-get install mono-complete
- On CentOS:
yum install mono-complete
- On Fedora:
dnf install mono-complete
Enable Mono debugging
To enable debugging of Mono based C# (and F#) programs, you have to pass the -debug
option to the compiler:
csc -debug Program.cs
If you want to attach the VS Code debugger to a Mono program, pass these additional arguments to the Mono runtime:
mono --debug --debugger-agent=transport=dt_socket,server=y,address=127.0.0.1:55555 Program.exe
The corresponding attach launch.json
configuration looks like this:
{
"version": "0.2.0",
"configurations": [
{
"name": "Attach to Mono",
"request": "attach",
"type": "mono",
"address": "localhost",
"port": 55555
}
]
}
Building the mono-debug extension
Building and using VS Code mono-debug requires a basic POSIX-like environment, a Bash-like shell, and an installed Mono framework.
First, clone the mono-debug project:
$ git clone https://github.com/microsoft/vscode-mono-debug
To build the extension vsix, run:
$ cd vscode-mono-debug
$ npm install
$ make