We are currently using a single command line tool to build our product on both Windows and Linux.
Si far its works nicely, allowing us to build out of source and wit
No need to merge PDB files.
Compile source files with /Z7 to avoid creating a PDB during the CL.EXE steps.
Use LIB.EXE to create static libaries with embedded debugging information. Use LINK.EXE instead of CL.EXE to link, use /PDB to specify where the debugging information goes.
If you are debugging a process with an EXE and one or more DLLs, feed your debugger a PDB for each image (EXE or DLL).