views:

427

answers:

4

Hi,

I ported one of my old projects to VS2005 and am having linker warnings such as

xxxxx.lib(xxxxxxxx.obj) : warning LNK4099: PDB 'vc60.pdb' was not found with ...; linking object as if no debug info

Now, I've tried rebuilding the project but the warnings won't go away. Is it really supposed to be looking for vc60.pdb and not vc80.pdb? I do have the vc80.pdb file..

Thanks

A: 

Usually a .pdb file type is created for debugging purposes. According to some info I found on a .pdb file type it says "this file contains debugging information that is used when you execute the program in debug mode".

I see that your only getting a warning not an error the program should run if you got zero errors.

I believe the only time you need this file is for debugging or profiling. Normally the release setting is used in the final build to get the fastest execution of your program. Hope this Helps.

Lucas McCoy
+2  A: 

You have an .obj linked into your .lib that has debugging info in it; that debugging info has a link to the vc60.pdb. If the .lib is your own, you need to recompile the source and rebuild the .lib file to update that reference. If the .lib isn't yours, you'll have to just ignore this warning and won't be able to debug into the source of that particular object file.

Ken White
Crap. The lib isn't mine.. :( It is an open-source lib, so I'll try that.. Thanks.
krebstar
+1  A: 

VS2005 should normally not look for vc60.pdb, especially not after a complete rebuild.

Maybe you have some third party library which was not recompiled and still contains references to the old debug info?

wmeyer
Yes I do have a third party library.. any fix for this?
krebstar
A: 

It's probably some .lib file that was compiled with VS2005.

You need to recompile EVERYTHING.

Jimmy J