Debugging with Symbols

To debug your software using source code, you need to load debug symbols that are used to map the program in target memory to the original source files. To do this, the Source Debugger needs the following:

  1. Program loaded in target memory that has been compiled with debug information.
  2. The load address of the program in target memory.
  3. The program binary file (executable file).
  4. Debug information file for the program binary (i.e., the symbols).
  5. Original program source code.


With ELF/DWARF format files (e.g., Linux), the debug information is generally included in the original program binary. When using the Microsoft* Compiler, the debug information is placed in a separate file with the .pdb extension. In this case, both the executable file and the PDB file are required and should be in the same directory.

For more complete information about compiler optimizations, see our Optimization Notice.