?> symstore add /r /f \sd\product\bin\prod\*.* /s \\symbols\productsymbols
/t "prod" /v "version" /C "date"
It correctly stores all of the dll's and exe's, but it skips the PDB saying
"unsupported format". I've read in old news group postings that there might
have been a similar issue in the 6.5* version of Debugging Tools for Windows,
but the MSFT tech said that it would be fixed in the next release.
Is this still broken? Is it something that is going to be fixed?
These PDB's are generated with VS.NET 2003 C++ compiler. Some are mixed
C++/C#, others are pure C++. It won't work with any of them.
Thanks in advance for any help...
--
Ken Johnson (Skywing)
Windows SDK MVP
http://www.nynaeve.net
"consultutah" <consu...@discussions.microsoft.com> wrote in message
news:E768AEB4-8E6D-41A2...@microsoft.com...
Thanks in advance...
C:\sda\SomeProd\core\base\convert>nmake
Microsoft (R) Program Maintenance Utility Version 7.10.3077
Copyright (C) Microsoft Corporation. All rights reserved.
- C:\sda\SomeProd\core\base\convert\debug\scaled_xml
cl -c -Fddebug\ -Fodebug\ -Zi -Ze -WX -GB -Gd -GX -Zp1 -nologo -vmg
-Gs -D_WIN95 -DWIN32 -DWINVER=0x0400 -W3 -MDd /CLR -wd 4562 -DDEBUG -Od -Zi
scaled_xml.cpp > scaled_xml.drr
- C:\sda\SomeProd\core\base\convert\debug\xmltrans
cl -c -Fddebug\ -Fodebug\ -Zi -Ze -WX -GB -Gd -GX -Zp1 -nologo -vmg
-Gs -D_WIN95 -DWIN32 -DWINVER=0x0400 -W3 -MDd /CLR -wd 4562 -DDEBUG -Od -Zi
xmltrans.cpp > xmltrans.drr
- C:\sda\SomeProd\core\base\convert\debug\xmltrans_ia
cl -c -Fddebug\ -Fodebug\ -Zi -Ze -WX -GB -Gd -GX -Zp1 -nologo -vmg
-Gs -D_WIN95 -DWIN32 -DWINVER=0x0400 -W3 -MDd /CLR -wd 4562 -DDEBUG -Od -Zi
xmltrans_ia.cpp > xmltrans_ia.drr
- C:\sda\SomeProd\core\base\convert\debug\xact_doc
cl -c -Fddebug\ -Fodebug\ -Zi -Ze -WX -GB -Gd -GX -Zp1 -nologo -vmg
-Gs -D_WIN95 -DWIN32 -DWINVER=0x0400 -W3 -MDd /CLR -wd 4562 -DDEBUG -Od -Zi
xact_doc.cpp > xact_doc.drr
- C:\sda\SomeProd\core\base\convert\debug\absymboltree2
cl -c -Fddebug\ -Fodebug\ -Zi -Ze -WX -GB -Gd -GX -Zp1 -nologo -vmg
-Gs -D_WIN95 -DWIN32 -DWINVER=0x0400 -W3 -MDd /CLR -wd 4562 -DDEBUG -Od -Zi
absymboltree2.cpp > absymboltree2.drr
linking CONVERT70.DLL
link -debug -OPT:NOWIN98 > link.drr
@C:\DOCUME~1\jdl\LOCALS~1\Temp\nm21
1C.tmp
C:\sda\SomeProd\core\base\convert>symstore add /o /r /f
c:\sda\SomeProd\bin\debug\CONVERT70.pdb /s c:\temp\symbols /t "test"
SYMSTORE MESSAGE: 0 alternate indexers registered
SYMSTORE MESSAGE: LastId.txt reported id 4
SYMSTORE MESSAGE: Final id is 0000000004
SYMSTORE MESSAGE: Skipping c:\sda\SomeProd\bin\debug\CONVERT70.pdb -
unsupported format.
SYMSTORE: Number of files stored = 0
SYMSTORE: Number of errors = 0
SYMSTORE: Number of files ignored = 1
Test.cpp is:
#using <mscorlib.dll>
void main() { System.Console.WriteLine("Hello"); }
I compile it with VS.NET 2003
?> cl /CLR /Zi test.cpp /link /DEBUG
I then try to store the PDB:
?> symstore add /o /f test.pdb /s c:\temp\symbols /t "test"
SYMSTORE MESSAGE: 0 alternate indexers registered
SYMSTORE MESSAGE: LastId.txt reported id 10
SYMSTORE MESSAGE: Final id is 0000000010
SYMSTORE MESSAGE: Skipping .\test.pdb - unsupported format.
SYMSTORE: Number of files stored = 0
SYMSTORE: Number of errors = 0
SYMSTORE: Number of files ignored = 1
Can someone please get me started in the right direction? I'm obviously
missing something basic.
I've tried adding .PDB's built with both the 2003 and 2005, both VC++ mixed
mode PDB's and C# PDB's and can't get any to work. I get the unsupported
format error no matter what I do. Therefore I assume that I am doing
something horribly wrong.
How do I produce PDB's that SYMSTORE can support?
Here was my latest attempt:
Test.cpp is:
#using <mscorlib.dll>
void main() { System.Console.WriteLine("Hello"); }
I compile it with VS.NET 2003 or 2005
?> cl /clr /Zi test.cpp /link /DEBUG
What was happening is that I had a few versions of dbghelp.dll on my system
and one of them was getting picked up in my path before the one from the
latest drop of "Debugging Tools for Windows".
So, if for some reason, you can't get SYMSTORE to add your PDB's, check your
path to see if you have an old version of dbghelp.dll that is getting
picked-up first. If you have which on your system, just use which -a
dbghelp.dll and it will give you a list of where it is and which order it is
getting picked up.