В настоящее время я настоятельно рекомендую парсер LBVM PDB, llvm-pdbutil .
Это отличный и многофункциональный дампер PDB, отлично дополняющий cvdump от Microsoft.
Для получения подробной информации и документации см .:
Некоторые полезные команды для начала работы:
llvm-pdbutil dump -all your.pdb
llvm-pdbutil bytes -syms your.pdb
llvm-pdbutil -help
Получение llvm-pdbutil:
Согласно LLVM 7.0.0, последней официальной версии, llvm-pdbutil.exe
не распространяется с двоичными файлами LLVM, поэтому он должен быть собран из исходного кода.
Однако, если вы в порядке с неофициальным 64-разрядным двоичным файлом Windows, мои домашние сборки llvm-pdbutil доступны здесь (обратите внимание, что требуется распространяемый Visual C ++ 2015):
https://github.com/shaharv/llvm-pdbutil-builds/releases
Здание llvm-pdbutil:
Для сборки llvm-pdbutil из исходного кода в Windows вам необходимо получить и настроить сборку LLVM.
Следуйте инструкциям на https://llvm.org/docs/GettingStarted.html.
Однако есть некоторые необходимые дополнения для поддержки PDB. Подведем итог (для VS 2017):
- Клонировать репозиторий LLVM:
git clone https://github.com/llvm/llvm-project.git
cd llvm-project
mkdir build && cd build
- Если не работает с консоли Visual Studio:
set VSINSTALLDIR=c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\
.
cmake -G "Visual Studio 15 2017" -A x64 -Thost=x64 -DLLVM_ENABLE_DIA_SDK=ON ../llvm
- В Visual Studio создайте проект
Tools/llvm-pdbutil
.