Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions Documentation/Debugger/How To Debug MIEngine.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# How To Debug MIEngine

MIEngine is one of the components used to enable the C/C++ debugging scenario with the Microsoft C/C++ extension with VS Code. This document is to help enable users who want to debug and contribute to MIEngine to fix issues or extend functionality. MIEngine is used to communicate with `gdb`/`lldb` using the MI protocol.
MIEngine is one of the components used to enable the C/C++ debugging scenario with the Microsoft C/C++ extension with VS Code. This document is to help enable users who want to debug and contribute to MIEngine to fix issues or extend functionality. MIEngine is used to communicate with `gdb`/`lldb` using the MI protocol.

**Repository:** https://github.com/Microsoft/MIEngine

Expand All @@ -19,7 +19,7 @@ You can open the solution file **MIDebugEngine.sln** located under **src** and c

The symbol files are as follows:

**On Windows**
**On Windows**
* Microsoft.MICore.pdb
* Microsoft.MIDebugEngine.pdb
* vscode\OpenDebugAD7.pdb
Expand All @@ -37,7 +37,7 @@ On Windows, the easiest way to debug is to use Visual Studio. Locate the **src\D

If you are not building the extension, Locate the **out\src\Debugger\extension.ts** file in the **.vscode\extensions\ms-vscode.cpptools** folder and open it in an editor.

Locate the following lines:
Locate the following lines:
```json
return {
command: command
Expand All @@ -48,13 +48,13 @@ and add the following line to the object:
args: ["--pauseForDebugger"]
```

This will cause the debugger to look like it has hung once you start debugging, but in reality it is waiting for a debugger to attach. Set your breakpoints and attach your debugger to the `OpenDebugAD7.exe` process. Once the debugger is attached, VS Code should start debugging and you can reproduce your scenario.
This will cause the debugger to look like it has hung once you start debugging, but in reality it is waiting for a debugger to attach. Set your breakpoints and attach your debugger to the `OpenDebugAD7.exe` process. Once the debugger is attached, VS Code should start debugging and you can reproduce your scenario.

### Debugging MIEngine running on Linux or Mac OS X
### Debugging MIEngine running on Linux or macOS

#### With MonoDevelop

On Linux and Mac OS X, we use `mono` as our framework. You can download Xamarin Studio v5.10.1.6 and remotely attach to your Mac or Linux box to debug there.
On Linux and macOS, we use `mono` as our framework. You can download Xamarin Studio v5.10.1.6 and remotely attach to your Mac or Linux box to debug there.

##### Install Prerequisites
1. Install [GTK](http://www.mono-project.com/download/).
Expand All @@ -78,12 +78,12 @@ MonoDevelop.exe

##### Configure the extension to enable remote debugging

Open the **~/.vscode/extensions/ms-vscode.cpptools-\<version\>/debugAdapters/OpenDebugAD7** file with a text editor and locate and uncomment the line at the bottom. When you start debugging, it will now hang until the remote debugger is attached from Xamarin Studio.
Open the **~/.vscode/extensions/ms-vscode.cpptools-\<version\>/debugAdapters/OpenDebugAD7** file with a text editor and locate and uncomment the line at the bottom. When you start debugging, it will now hang until the remote debugger is attached from Xamarin Studio.

##### Attach the remote debugger

In MonoDevelop: Run -> Run With -> Custom Command Mono Soft Debugger.
Fill in the IP and port of the Linux/Mac OS X machine and hit "Connect" to start debugging.
Fill in the IP and port of the Linux/macOS machine and hit "Connect" to start debugging.

After you've done this once, you can hit the MonoDevelop "Play" button or <kbd>F5</kbd> to bring up the connect dialog again.

Expand Down Expand Up @@ -113,7 +113,7 @@ After you've done this once, you can hit the MonoDevelop "Play" button or <kbd>F

##### Configure the extension to enable remote debugging

Open the **~/.vscode/extensions/ms-vscode.cpptools-\<version\>/debugAdapters/OpenDebugAD7** file with a text editor and locate and uncomment the line at the bottom. When you start debugging, it will now hang until the remote debugger is attached from VS Code.
Open the **~/.vscode/extensions/ms-vscode.cpptools-\<version\>/debugAdapters/OpenDebugAD7** file with a text editor and locate and uncomment the line at the bottom. When you start debugging, it will now hang until the remote debugger is attached from VS Code.

##### Attach the remote debugger

Expand Down
10 changes: 5 additions & 5 deletions Extension/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2685,7 +2685,7 @@
"integrity": "186614524A13EC75BF68798861818D25CE82FDE293C57B725C11F62B0694EC55"
},
{
"description": "C/C++ language components (OS X)",
"description": "C/C++ language components (macOS / x86_64)",
"url": "https://go.microsoft.com/fwlink/?linkid=2164296",
"platforms": [
"darwin"
Expand All @@ -2700,7 +2700,7 @@
"integrity": "8E19E1BDD95FCC80F74529E6B5C24AB761F7D84B92CF44C33DAE38A8F11F6FB5"
},
{
"description": "C/C++ language components (OS X ARM64)",
"description": "C/C++ language components (macOS / ARM64)",
"url": "https://go.microsoft.com/fwlink/?linkid=2164187",
"platforms": [
"darwin"
Expand Down Expand Up @@ -2788,7 +2788,7 @@
"integrity": "CD5578A21C8D515D15C0611621E44C03DE4E667EFB4EE1A0DE18B08FD9B96794"
},
{
"description": "ClangFormat (OS X)",
"description": "ClangFormat (macOS / x86_64)",
"url": "https://go.microsoft.com/fwlink/?LinkID=2162416",
"platforms": [
"darwin"
Expand All @@ -2802,7 +2802,7 @@
"integrity": "AEB24D394118EAD87087DCC651F2EE329FC335ECE88ED6C8C2A9E93ED60DFECD"
},
{
"description": "ClangFormat (OS X arm64)",
"description": "ClangFormat (macOS / ARM64)",
"url": "https://go.microsoft.com/fwlink/?LinkID=2162413",
"platforms": [
"darwin"
Expand Down Expand Up @@ -2910,7 +2910,7 @@
"integrity": "946C54C8C6BF5BF79AC05D4E152F8D8647700FA786C21505832B3C79988339B4"
},
{
"description": "Mono Runtime (OS X)",
"description": "Mono Runtime (macOS)",
"url": "https://go.microsoft.com/fwlink/?LinkId=2027403",
"platforms": [
"darwin"
Expand Down