= Welcome to cv2pdb =
cv2pdb is a converter of DMD !CodeView and GDC DWARF debug information to PDB debug format to make it accessible to current tools and debuggers.
The goal of this project is to make debugging of D applications that were created with the [http://dlang.org/download.html DMD] or [https://bitbucket.org/goshawk/gdc/wiki/Home GDC] compiler, as seamless as possible in current versions of Visual Studio (i.e Visual Studio 2008 and VCExpress).
As a side effect, other applications might also benefit from the converted debug information, like !WinDbg and DMC.
'''cv2pdb can now be installed as part of [http://www.dsource.org/projects/visuald Visual D] which features integration of the D programming language into Visual Studio.'''
== Project Information ==
||Status ||[[ProjectInfo(status_id)]] - [[ProjectInfo(status_name)]]
||Operating System ||Windows XP,Vista
||License ||Artistic License 2.0
||Home Page ||[[ProjectInfo(home_page)]]
||SVN Repository ||http://svn.dsource.org/projects/cv2pdb
== Features ==
* conversion of DMD !CodeView information to PDB file
* conversion of DWARF debug information to PDB file
* converted line number info allows '''setting breakpoints'''
* display of variables, fields and objects in '''watch, local and auto window and in data tooltips'''
* '''convenient display of dynamic and associative arrays''' in watch windows
* '''demangles function names''' for convenient display of callstack
* also works debugging executables built with the Digital Mars C/C++ compiler DMC
[wiki:Features Read more...]
== News ==
2012-06-16 Version 0.25
* new option -p allows to specify the embedded PDB reference in the binary
* added support for VS2012
2012-05-01 Version 0.24
* supports unicode characters in file names
* improve interpretation of DWARF location expression
2012-02-12 Version 0.23
* disabled named enumerator for D basic types to avoid debugger troubles displaying arrays
* added command line switch -e to enable using named enumerator for D basic types
* added DWARF support
* added x64 support
* tweaked visualizer for associative array element to just show key and value
[wiki:VersionHistory Full version history...]
== Downloads ==
The current binary package can be downloaded [http://www.dsource.org/projects/cv2pdb/browser/downloads/cv2pdb_0.25.zip?format=raw here].
The sources can be retreived from the SVN repository or from the [http://www.dsource.org/projects/cv2pdb/browser/downloads/cv2pdb_src_0.25.zip?format=raw source package].
== Installation ==
There is no dedicated installation program, a simple copy of the executable is enough to use it. A few manual extra steps should be done for the best debugging experience.
[wiki:Installation Read more...]
== Updating ==
If you are updating from a previous version of cv2pdb, please make sure that the versions of cv2pdb.exe, dviewhelper.dll and the snippets in autoexp.dat are compatible with each other. The easy way is to take them from the same package.
== Usage ==
The executable is a command line program, that creates a PDB file from the !CodeView debug information found in the executable to debug. [wiki:Usage Read more...]
== Patching DMD ==
If you are not among the faint-hearted, you might want to patch DMD for even better debug experience. [wiki:Patching Read more...]