According to http://msdn.microsoft.com/en-us/library/yd4f8bd1.aspx there’s 2 .pdb files for a project.
project.pdb I use to allow loading minidumps later on, but what exactly is vcx0.pdb used for? If it’s missing, it’s not a problem, and I don’t need to store it for anything.
I’m trying to share a PCH amongst different projects and this file is the only thing causing problems. If I copy the vcx0.pdb created with the PCH to all projects, those projects use this file as a base and add their own symbols to it. If don’t give those projects this .pdb file, they fail.
A couple of things I noticed:
- Warning LNK4099 reporting a missing vcx0.pdb doesn’t seem to be anything critical.
- If I point multiple projects to the same file using /Fd, and disable parallel building to make that work, every project keeps incrementing with their own symbols
VCx0.PDB is generated by the compiler and has type information. It is input to the linker.
The linker outputs $(TargetName).PDB