Symbol path for Windows debuggers • • 6 minutes to read • Contributors • • • • In this article The symbol path specifies locations where the Windows debuggers (WinDbg, KD, CDB, NTST) look for symbol files. For more information about symbols and symbol files, see. Some compilers (such as Microsoft Visual Studio) put symbol files in the same directory as the binary files. World Software Applications. The symbol files and the checked binary files contain path and file name information. This information frequently enables the debugger to find the symbol files automatically. If you are debugging a user-mode process on the computer where the executable was built, and if the symbol files are still in their original location, the debugger can locate the symbol files without you setting the symbol path. In most other situations, you have to set the symbol path to point to your symbol file locations.
NVIDIA is making available a repository of driver binaries. You can find it here:http://driver-symbols.nvidia.com/. We would like to show you a description here but the site won’t allow us. Download App Remover Portable Washing.
Symbol Path Syntax The debugger's symbol path is a string that consists of multiple directory paths, separated by semicolons. Access ??? ??? ?? there. Relative paths are supported. However, unless you always start the debugger from the same directory, you should add a drive letter or a network share before each path.
Network shares are also supported. For each directory in the symbol path, the debugger looks in three directories. For example, if the symbol path includes the c: MyDir directory, and the debugger is looking for symbol information for a DLL, the debugger first looks in c: MyDir symbols dll, then in c: MyDir dll, and finally in c: MyDir. The debugger then repeats this process for each directory in the symbol path. Finally, the debugger looks in the current directory and then in the current directory with. Dll appended to it.
(The debugger appends. Sys, depending on which binaries it is debugging.) Symbol files have date and time stamps. You do not have to worry that the debugger will use the wrong symbols that it may find first in this sequence. It always looks for the symbols that match the time stamp on the binary files that it is debugging. For more information about responses when symbols files are not available, see. One way to set the symbol path is by entering the command.
For other ways to set the symbol path, see later in this topic. Caching Symbols Locally We strongly recommend that you always cache your symbols locally. One way to cache symbols locally is to include cache*; or cache*localsymbolcache;* in your symbol path. If you include the string cache*; in your symbol path, symbols loaded from any element that appears to the right of this string are stored in the default symbol cache directory on the local computer. For example, the following command tells the debugger to get symbols from the network share someshare and cache the symbols in the default location on the local computer..sympath cache*; someshare If you include the string cache*localsymbolcache; in your symbol path, symbols loaded from any element that appears to the right of this string are stored in the localsymbolcache directory. For example, the following command tells the debugger to obtain symbols from the network share someshare and cache the symbols in the c: MySymbols directory..sympath cache*c: MySymbols; someshare Using a Symbol Server If you are connected to the Internet or a corporate network, the most efficient way to access symbols is to use a symbol server. You can use a symbol server by using the srv*, srv*symbolstore, or srv*localsymbolcache*symbolstore string in your symbol path.
If you include the string srv* in your symbol path, the debugger uses a symbol server to get symbols from the default symbol store. For example, the following command tells the debugger to use a symbol server to get symbols from the default symbol store. These symbols are not cached on the local computer..sympath srv* If you include the string srv*symbolstore in your symbol path, the debugger uses a symbol server to get symbols from the symbolstore store. For example, the following command tells the debugger to use a symbol server to get symbols from the symbol store. These symbols are not cached on the local computer..sympath srv*If you include the string srv*localcache*symbolstore in your symbol path, the debugger uses a symbol server to get symbols from the symbolstore store and caches them in the localcache directory. For example, the following command tells the debugger to use a symbol server to get symbols from the symbol store at and cache the symbols in c: MyServerSymbols..sympath srv*c: MyServerSymbols*If you have a directory on your computer where you manually place symbols, do not use that directory as the cache for symbols obtained from a symbol server. Instead, use two separate directories.