WinGDB logo Debugging with GDB under Visual Studio

Introduction
WinGDB is an extension for Visual Studio IDE allowing to debug processes with GDB debugger, using native Visual Studio debugging user interface. There are two editions:
  • WinGDB for remote Linux debugging

    Allows debugging on remote machines running Linux (or other Unix systems).

  • WinGDB for MinGW

    Allows debugging programs compiled by MinGW on Windows, or embedded system targets.

News
2009.12.01 - WinGDB 1.1 is available. What's new.

For already registered users an upgrade from WinGDB 1.0 is free and there is no need to register again.

Important note to embedded systems developers

There are many environments and toolchains for embedded systems development based on GNU tools. While the WinGDB/MinGW edition is generally usable for debugging on these platforms, it may not work with your environment, or have problems. Please test the trial version before purchasing to determine whether the results satisfy you. If you encounter any problems, please contact us. We're currently examining some popular environments (namely CodeSourcery and Yagarto). Our goal is to improve results on these environments, and the first fixes are planned for 1.2 version.

Download problems?

In case you experience problems with the download with Opera (file extension is changed from .msi to .exe) please look here.

Follow WinGDB on Twitter.
Features
  • An Add-In for the Visual Studio IDE providing integration with the VS debugger interface.
  • Remote connection to the target machine over SSH.
  • Support for the GDB debugger as a backend (support for other debuggers is planned for the future).
  • MinGW support.
  • Embedded systems support.
  • The "Attach to process" command, allowing attaching to remote processes with GDB. The process to attach can be selected using a remote process browser. Also the additional source directories, debug file directory and shared libraries parameters can be specified. Beside custom script can be executed after debugger has been initialized.

    The process can be also selected using the standard Visual Studio process list.
  • The "Launch process" command, allowing to launch remote processes inside GDB. The program to debug can be selected using a remote file system browser. Also the working directory, arguments, additional environment variables, additional source directories, debug file directory and shared libraries parameters can be specified. Beside custom script can be executed after debugger has been initialized.
  • The "Examine core dump" command, allowing to examine core dump inside GDB. The executable path and core dump to examine can be selected using a remote file system browser. Also additional source directories, debug file directory and shared libraries parameters can be specified. Beside custom script can be executed after debugger has been initialized.
  • Remote build - run makefile (it may be any command, it doesn't have to be make only) on remote machine. The output of compiler/linker dumps to VisualStudio Console/Task-Window. User can comfortably navigate between errors and easily browse source files (they will be automatically downloaded from remote host).
  • Remote source code browsing in the Visual Studio editor. The files are fetched as needed using SCP protocol and cached over a session.
  • Remote creation/edition of the source code in the Visual Studio editor. Edited file is automatically sent back to the target machine after saving it.
  • Custom scripts for additional configuration (useful for embedded devices).
  • Basic debugger commands: Run, Step over/into/out, Break All, Continue, Run to cursor, Set Next Statement.
  • Breakpoint setting in remote source files browsed locally.
  • Breakpoint setting by function name or through call-stack window.
  • Additional breakpoint properties: conditions, hit counting, temporary disabling.
  • Data breakpoint (write-watchpoint in gdb nomenclature).
  • Call stack window.
  • Watch window.
  • Auto / Locals window.
  • Processes window.
  • Modules window.
  • Threads window.
  • Memory window.
  • Registers window.
  • Signals window.
  • Disassembler view.
  • Console window for debugged process I/O, emulating a XTerm terminal.
  • Generating core dump (option is available in menu "Debug" under option "Save Dump As").
  • Follow fork mode for debugging daemons.
  • Support for 64-bit applications.
  • Byte order support (Big-Endian/Little-Endian).
For more information, please see the FAQ section and documentation .

Copyright (C) 2008-2009 WinGDB.com. All rights reserved.