└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # llvm-pdbutil-builds 2 | 3 | Unofficial 64-bit Windows builds of [`llvm-pdbutil`](https://llvm.org/docs/CommandGuide/llvm-pdbutil.html), built from the LLVM trunk. 4 | 5 | For using the build (when prerequisites are installed), simply unpack it, run over the desired .pdb file, and profit. 6 | 7 | Big shout out to the LLVM team for their hard work on PDB support and this great tool! 8 | 9 |

Usage examples:

10 | 11 | - `llvm-pdbutil dump -all your.pdb` 12 | Dump most information available from this PDB. 13 | 14 | - `llvm-pdbutil bytes -syms your.pdb` 15 | Dump raw bytes of the symbol record substream. 16 | 17 | - `llvm-pdbutil -help` 18 | Show the main help screen. `-help` is available for each suboption, too. 19 | 20 |

Prerequisites:

21 | 22 | - Visual C++ Redistributable for Visual Studio 2015: 23 | https://www.microsoft.com/en-us/download/details.aspx?id=48145 24 | 25 | - DIA SDK (Debug Interface Access SDK) - bundled with Visual Studio: 26 | https://docs.microsoft.com/en-us/visualstudio/debugger/debug-interface-access/debug-interface-access-sdk?view=vs-2017 27 | 28 | - Alternatively, if you're missing the DIA SDK, you could instead install the standalone `msdia140.dll` bundled with the `llvm-pdbutil-9.0.0svn-win64-msdiadll64.7z` zip file (see below for instructions). 29 | 30 |

msdia140.dll:

31 | 32 | - If you're missing the DIA SDK, you could install the DIA DLL directly: 33 | 1. Unpack `llvm-pdbutil-9.0.0svn-win64-msdiadll64.7z`. 34 | 2. Register the DLL with: `regsvr32 msdia140.dll`. 35 | 36 | - In case the DIA DLL is missing or could not be loaded, the following error may occur: 37 | `llvm-pdbutil: An unknown error has occurred. HRESULT: 0x800700C1: Calling NoRegCoCreate` 38 | 39 |

llvm-pdbutil build instructions:

40 | 41 | For building `llvm-pdbutil` yourself, follow these steps. 42 | 43 | - Clone the LLVM monorepo: `git clone https://github.com/llvm/llvm-project.git` 44 | - `cd llvm-project` 45 | - `mkdir build && cd build` 46 | - If not running from Visual Studio console: `set VSINSTALLDIR=\` 47 | - Verify that the folder `%VSINSTALLDIR%\DIA SDK` exists. 48 | - Path must end with a backslash and must not be surrounded by quotes. 49 | - Configure the build: 50 | `cmake -G "Visual Studio 15 2017" -A x64 -Thost=x64 -DLLVM_ENABLE_DIA_SDK=ON ../llvm` 51 | - Open `build\LLVM.sln` in Visual Studio 52 | - build the `Tools/llvm-pdbutil` project. 53 | 54 | For more details, visit https://llvm.org/docs/GettingStarted.html. 55 | --------------------------------------------------------------------------------