Different compilers generate different types of debug information. For instance, a Visual C++ compiler generates debug info in the PDB format and Delphi generates debug info in the TD32 format.
Depending on its type and the compiler settings, debug information can be compiled within an executable, or it can be generated as a separate file (or files) that reside(s) at specific location relative to the executable. This typically happens with debug information of the PDB format. The compiler places the .pdb file in a folder, where the executable is located. However, in general, the debug info file can reside in any other folder or even on another computer on a local network or on the Internet.
Some developers use this feature to save disk size needed for debugging applications on several computers. When debugging these applications, the developers place debug info files in a folder and share this folder on the local network or on the Web. The debugging tools that are running on other computers can access this shared folder and obtain the debug information for the modules being debugged. This approach saves the overall amount of disk space occupied by the application’s files and modules, since the debug info files are stored in a shared location and are not copied to each workstation.
When you add an executable or DLL to your AQTime project, AQTime searches for the debug info file (or files) in the default location, that is, in the folder where the compiler typically generates the debug info file. If the debug info file resides in another location, AQTime will not be able to find it and will report that the executable has no debug information.
AQTime includes the Symbols Options dialog where you can specify the location for the debug info files. AQTime will search for the debug info files in the folders that are specified in the dialog.
In order for AQTime to be able to use this functionality, SymSrv.dll must be installed on your computer. This DLL is deployed as part of Microsoft’s Debugging Tools for the Windows package. You can download this package from Microsoft web site. |
To specify the folder for the search:
-
Open the Symbols Options dialog. To do this:
-
Select Options > Options from AQTime’s main menu. This will open the Options dialog.
-
Choose the Services > Symbols group in the tree view on the left of the Options dialog.
-
Select Tools > Options from the main menu of Visual Studio. This will invoke the Options dialog.
-
Choose the AQTime > Services > Symbols group in the dialog.
-
Select AQTime > Options from the main menu of Embarcadero RAD Studio. This will invoke the Options dialog.
-
Choose the Services > Symbols group in the tree view on the left of the Options dialog.
-
-
In the Symbols Path section of the dialog, press Add. AQTime will append a new blank line to the Symbols Path list and activate an in-place editor.
-
Specify the desired folder in the in-place editor. You can type the folder name or press the ellipsis button and choose the folder in the ensuing standard Browse for Folder dialog. Specify the fully-qualified folder name, for instance, C:\MySources\Symbols or //MyServer/Symbols. Project-relative paths are not supported.
You can also enter the URL (web folder) that holds the desired debug info file (for instance, http://msdl.microsoft.com/download/symbols).
-
Make sure the check box for the added line is selected. AQTime will search for the files only in those folders (or URLs), whose check box is selected in the dialog.
-
Press Move Up or Move Down to set the desired position of the line among other search paths (AQTime will search for the files starting with the folders that are specified at the top of the list. If the file is found, the other folders are not checked).
-
Press OK to save the changes.
If the debug info files are available via the Internet, then AQTime will download them to your computer and save them to a temporary folder. The file will reside in this folder until you close AQTime. When you close it, the files will be deleted. So, next time you launch AQTime, it will download the files again. To avoid this repetitive downloading, you can specify the folder, in which the downloaded files will be stored, in the Cache symbols directory edit box. If you specify a folder, AQTime will download the files to this folder and will use these files during the next sessions. The files will remain in the folder until you remove them manually.
See Also
Symbols Options Dialog
How AQTime Profilers Use Metadata and Debug Information