-1

When debugging a c++ solution in Visual Studio 2010, It says "No symbols have been loaded for this document." And when I check in debug / modules / <dll I cant debug>.dll / symbol load information It is looking for a pdb with the wrong name.

So, where can I set the name of the symbol it is looking for? I looked all through the command line options, and I can't find such a name anywhere.

I've tried to do a rebuild, a clean + build, but neither helped.

akaltar
  • 1,002
  • 1
  • 19
  • 25
  • Check C++/Output Files/Program Database Filename and Linker/Debugging/Generate Program Database file. Make sure they are the same and both write to the same file. The former is normally set to v100.pdb. – cup Aug 09 '15 at 08:08
  • @cup Yes, that was a problem, tough cant test, because now I can't get it to compile yet. – akaltar Aug 09 '15 at 08:44
  • @cup Tested, now works. This was the problem. Please post it as an answer so I can accept it. – akaltar Aug 09 '15 at 11:44

2 Answers2

1

Try searching all PDBs (and .idb) and manually delete them.

The reason some include path is set to that library's directory that contains your PDBs, its .pdb file seems to be used by the VS debugger.

The solution is to delete these .pdb files or to rebuild all libraries.

DeJaVo
  • 3,091
  • 2
  • 17
  • 32
  • I did this, then a clean. Now CL.exe crashes. I guess I'll have to recreate the whole solution and projects, because the property pages are bugged. – akaltar Aug 09 '15 at 08:20
  • Look for 'C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin' run 'vcvars32.bat' from there to set up your environment. – DeJaVo Aug 09 '15 at 08:38
  • That didn't help, probably the Cmake generated solution files are bugged. I'll just recreate them manually. – akaltar Aug 09 '15 at 08:46
1

There are two places in which .pdb information is collected

1) C++/Output Files/Program Database Filename

2) Linker/Debugging/Generate Program Database file

By default, 2 is set but 1 is normally set to v100.pdb (for VS2010). If both these files are set to point to the same file, then you should get the symbolic information.

cup
  • 7,589
  • 4
  • 19
  • 42