Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a system-library-independent PDB reader that needs no private loader #2538

Open
derekbruening opened this issue Jan 20, 2025 · 0 comments

Comments

@derekbruening
Copy link
Contributor

The reliance on dbghelp.dll is a roadblock requiring that Dr. Memory use DR's private loader to try to satisfy all the WinAPI dependencies of dbghelp. DR's private loader is fragile and sometimes fails on new versions of system libraries. If we had a portable PDB reader we could potentially stop using the private loader and rely only on the DR API and drwinapi.

With LLVM documenting the PDB format and adding support to their tools a few years ago, we may be able to accomplish this. Unfortunately LLVM does not provide a nice library to just replace dbghelp. We would have to imitate what a tool like llvm-pdbutil (https://llvm.org/docs/CommandGuide/llvm-pdbutil.html) does, or what lldb does (not sure how much PDB support is in lldb), with a full understanding of the new PDB documentation: https://llvm.org/docs/PDB/index.html, and considering the LLVM Apache-based license.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant