Symbol Server for Opticks - new method of getting pdbs

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Symbol Server for Opticks - new method of getting pdbs

Kip Streithorst
Administrator

All,

 

The current method of distributing pbds for debugging Opticks using Visual Studio is a bit problematic, you have to download a 300 MB file, unzip it and then configure multiple options in Visual Studio and this has to be repeated for every new version of Opticks.

 

Trevor and I came across Symbol Servers and have set one up for Opticks.

 

You simply edit your Visual Studio options, [1] and add http://opticks.org/downloads/symstore/ and then you can right-click on a call stack and select “Load Symbols From -> Symbol Path” and Visual Studio will download only the symbols you need from the opticks.org website and then cache them on your computer.  This will work for any version of Opticks that we push the symbols up to that server for, currently the following have been pushed up:

 

Opticks 4.6.0

Opticks 4.7.0rc1

Spectral Processing Extension 1.3.0

Spectral Processing Extension 1.4.0rc1

IDL Scripting Extension 1.3.0

IDL Scripting Extension 1.4.0rc1

Python Scripting Extension 1.3.0

Python Scripting Extension 1.4.0rc1

 

For more details on Symbol Servers, you can read the complete documentation at [2].

 

For users that may want to grab all the symbols at once instead of as-needed you can use SymChk, see [3] and [4] for more details.

 

I am interested to hear what people think of using this method of distributing pdbs.  My current thoughts are that this should be the only method of distributing them with 4.7.1 and later and as of 4.7.1 stop creating the current 300 MB zip file.

 

Thanks,

Kip

 

[1] - http://msdn.microsoft.com/en-us/library/b13s79c0.aspx

[2] - http://msdn.microsoft.com/en-us/library/ms680693%28v=VS.85%29.aspx

[3] - http://msdn.microsoft.com/en-us/library/ff560157%28v=VS.85%29.aspx

[4] - http://msdn.microsoft.com/en-us/library/ff560061%28v=VS.85%29.aspx

 

 

 


This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its
next-generation tools to help Windows* and Linux* C/C++ and Fortran
developers boost performance applications - including clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Opticks-devs mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/opticks-devs
Reply | Threaded
Open this post in threaded view
|

Re: Symbol Server for Opticks - new method of gettingpdbs

rgoffena

“I looked at [3] and [4] and did not see how to “grab all the symbols at once”.  How does one “grab all the symbols at once”?

 

Will this be practical for extension developers who do not have access to http://opticks.org/downloads/symstore/?

 

 

Robert Goffena

Ball Aerospace & Technologies Corp.

2875 Presidential Dr. Fairborn, OH 45324-6269

Phone:  (937) 320-4096

Fax:  (937) 429-1687

Email:  [hidden email]

From: Streithorst, Kip [mailto:[hidden email]]
Sent: Monday, May 23, 2011 12:31 PM
To: [hidden email]
Subject: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

All,

 

The current method of distributing pbds for debugging Opticks using Visual Studio is a bit problematic, you have to download a 300 MB file, unzip it and then configure multiple options in Visual Studio and this has to be repeated for every new version of Opticks.

 

Trevor and I came across Symbol Servers and have set one up for Opticks.

 

You simply edit your Visual Studio options, [1] and add http://opticks.org/downloads/symstore/ and then you can right-click on a call stack and select “Load Symbols From -> Symbol Path” and Visual Studio will download only the symbols you need from the opticks.org website and then cache them on your computer.  This will work for any version of Opticks that we push the symbols up to that server for, currently the following have been pushed up:

 

Opticks 4.6.0

Opticks 4.7.0rc1

Spectral Processing Extension 1.3.0

Spectral Processing Extension 1.4.0rc1

IDL Scripting Extension 1.3.0

IDL Scripting Extension 1.4.0rc1

Python Scripting Extension 1.3.0

Python Scripting Extension 1.4.0rc1

 

For more details on Symbol Servers, you can read the complete documentation at [2].

 

For users that may want to grab all the symbols at once instead of as-needed you can use SymChk, see [3] and [4] for more details.

 

I am interested to hear what people think of using this method of distributing pdbs.  My current thoughts are that this should be the only method of distributing them with 4.7.1 and later and as of 4.7.1 stop creating the current 300 MB zip file.

 

Thanks,

Kip

 

[1] - http://msdn.microsoft.com/en-us/library/b13s79c0.aspx

[2] - http://msdn.microsoft.com/en-us/library/ms680693%28v=VS.85%29.aspx

[3] - http://msdn.microsoft.com/en-us/library/ff560157%28v=VS.85%29.aspx

[4] - http://msdn.microsoft.com/en-us/library/ff560061%28v=VS.85%29.aspx

 

 

 

 
 
This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its
next-generation tools to help Windows* and Linux* C/C++ and Fortran
developers boost performance applications - including clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Opticks-devs mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/opticks-devs
Reply | Threaded
Open this post in threaded view
|

Re: Symbol Server for Opticks - new method of gettingpdbs

Kip Streithorst
Administrator

Link [4] does discuss this issue.

 

The short answer is by running symchk.exe (you get this from the Windows SDK, Debugging Tools for Windows).  SymChk.exe is the executable that can do batch grabs of .pdbs from a symbol server so you don’t need real-time access to a symbol server.

 

Thanks,

Kip

 

From: Goffena, Robert
Sent: Monday, May 23, 2011 1:08 PM
To: Streithorst, Kip; [hidden email]
Subject: RE: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

“I looked at [3] and [4] and did not see how to “grab all the symbols at once”.  How does one “grab all the symbols at once”?

 

Will this be practical for extension developers who do not have access to http://opticks.org/downloads/symstore/?

 

 

Robert Goffena

Ball Aerospace & Technologies Corp.

2875 Presidential Dr. Fairborn, OH 45324-6269

Phone:  (937) 320-4096

Fax:  (937) 429-1687

Email:  [hidden email]

From: Streithorst, Kip [mailto:[hidden email]]
Sent: Monday, May 23, 2011 12:31 PM
To: [hidden email]
Subject: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

All,

 

The current method of distributing pbds for debugging Opticks using Visual Studio is a bit problematic, you have to download a 300 MB file, unzip it and then configure multiple options in Visual Studio and this has to be repeated for every new version of Opticks.

 

Trevor and I came across Symbol Servers and have set one up for Opticks.

 

You simply edit your Visual Studio options, [1] and add http://opticks.org/downloads/symstore/ and then you can right-click on a call stack and select “Load Symbols From -> Symbol Path” and Visual Studio will download only the symbols you need from the opticks.org website and then cache them on your computer.  This will work for any version of Opticks that we push the symbols up to that server for, currently the following have been pushed up:

 

Opticks 4.6.0

Opticks 4.7.0rc1

Spectral Processing Extension 1.3.0

Spectral Processing Extension 1.4.0rc1

IDL Scripting Extension 1.3.0

IDL Scripting Extension 1.4.0rc1

Python Scripting Extension 1.3.0

Python Scripting Extension 1.4.0rc1

 

For more details on Symbol Servers, you can read the complete documentation at [2].

 

For users that may want to grab all the symbols at once instead of as-needed you can use SymChk, see [3] and [4] for more details.

 

I am interested to hear what people think of using this method of distributing pdbs.  My current thoughts are that this should be the only method of distributing them with 4.7.1 and later and as of 4.7.1 stop creating the current 300 MB zip file.

 

Thanks,

Kip

 

[1] - http://msdn.microsoft.com/en-us/library/b13s79c0.aspx

[2] - http://msdn.microsoft.com/en-us/library/ms680693%28v=VS.85%29.aspx

[3] - http://msdn.microsoft.com/en-us/library/ff560157%28v=VS.85%29.aspx

[4] - http://msdn.microsoft.com/en-us/library/ff560061%28v=VS.85%29.aspx

 

 

 

 
 
This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its
next-generation tools to help Windows* and Linux* C/C++ and Fortran
developers boost performance applications - including clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Opticks-devs mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/opticks-devs
Reply | Threaded
Open this post in threaded view
|

Re: Symbol Server for Opticks - new method of gettingpdbs

rgoffena

When I read [4] it seems i must create a manifest of files I need symbols for based on Opticks+development_extension.  If I add code which calls a new class/method from PlugInUtilties, will I need to recreate that manifest?  Or is there some way I can create a manifest that says give me all symbols, regardless of what Opticks+development_extension require?

 

 

Robert Goffena

Ball Aerospace & Technologies Corp.

2875 Presidential Dr. Fairborn, OH 45324-6269

Phone:  (937) 320-4096

Fax:  (937) 429-1687

Email:  [hidden email]

From: Streithorst, Kip
Sent: Monday, May 23, 2011 2:19 PM
To: Goffena, Robert; '[hidden email]'
Subject: RE: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

Link [4] does discuss this issue.

 

The short answer is by running symchk.exe (you get this from the Windows SDK, Debugging Tools for Windows).  SymChk.exe is the executable that can do batch grabs of .pdbs from a symbol server so you don’t need real-time access to a symbol server.

 

Thanks,

Kip

 

From: Goffena, Robert
Sent: Monday, May 23, 2011 1:08 PM
To: Streithorst, Kip; [hidden email]
Subject: RE: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

“I looked at [3] and [4] and did not see how to “grab all the symbols at once”.  How does one “grab all the symbols at once”?

 

Will this be practical for extension developers who do not have access to http://opticks.org/downloads/symstore/?

 

 

Robert Goffena

Ball Aerospace & Technologies Corp.

2875 Presidential Dr. Fairborn, OH 45324-6269

Phone:  (937) 320-4096

Fax:  (937) 429-1687

Email:  [hidden email]

From: Streithorst, Kip [mailto:[hidden email]]
Sent: Monday, May 23, 2011 12:31 PM
To: [hidden email]
Subject: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

All,

 

The current method of distributing pbds for debugging Opticks using Visual Studio is a bit problematic, you have to download a 300 MB file, unzip it and then configure multiple options in Visual Studio and this has to be repeated for every new version of Opticks.

 

Trevor and I came across Symbol Servers and have set one up for Opticks.

 

You simply edit your Visual Studio options, [1] and add http://opticks.org/downloads/symstore/ and then you can right-click on a call stack and select “Load Symbols From -> Symbol Path” and Visual Studio will download only the symbols you need from the opticks.org website and then cache them on your computer.  This will work for any version of Opticks that we push the symbols up to that server for, currently the following have been pushed up:

 

Opticks 4.6.0

Opticks 4.7.0rc1

Spectral Processing Extension 1.3.0

Spectral Processing Extension 1.4.0rc1

IDL Scripting Extension 1.3.0

IDL Scripting Extension 1.4.0rc1

Python Scripting Extension 1.3.0

Python Scripting Extension 1.4.0rc1

 

For more details on Symbol Servers, you can read the complete documentation at [2].

 

For users that may want to grab all the symbols at once instead of as-needed you can use SymChk, see [3] and [4] for more details.

 

I am interested to hear what people think of using this method of distributing pdbs.  My current thoughts are that this should be the only method of distributing them with 4.7.1 and later and as of 4.7.1 stop creating the current 300 MB zip file.

 

Thanks,

Kip

 

[1] - http://msdn.microsoft.com/en-us/library/b13s79c0.aspx

[2] - http://msdn.microsoft.com/en-us/library/ms680693%28v=VS.85%29.aspx

[3] - http://msdn.microsoft.com/en-us/library/ff560157%28v=VS.85%29.aspx

[4] - http://msdn.microsoft.com/en-us/library/ff560061%28v=VS.85%29.aspx

 

 

 

 
 
This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its
next-generation tools to help Windows* and Linux* C/C++ and Fortran
developers boost performance applications - including clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Opticks-devs mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/opticks-devs
Reply | Threaded
Open this post in threaded view
|

Re: Symbol Server for Opticks - new method of getting pdbs

Kip Streithorst
Administrator

You would do the following:

 

symchk /r [PATH TO OPTICKS SDK]\Build /s srv*[ INSERT PATH HERE]*http://opticks.org/downloads/symstore

 

An example:

 

symchk /r C:\kiptemp\opticks-sdk-4.6.0-windows\Build /s srv*C:\kiptemp\symbols*http://opticks.org/downloads/symstore

 

You would then take C:\kiptemp\symbols in this example and move it over to another computer as-is, let’s say C:\movedsymbols.  You would then add C:\movedsymbols to the Visual Studio dialog, [1].  And everything would work fine.  You could also move to a shared network path, let’s say <a href="file:///\\sharedserver\symbols">\\sharedserver\symbols and then add that network path to the Visual Studio settings as talked about in [1]. I just tested this myself.

 

As to your question about PlugInUtilities.lib, I discovered a problem was not aware of until now. You must have the associated .pdb for a static library at the time you link it into an .exe or .dll.  If you don’t you will receive linker warning LNK4204 and the resulting .pdb for your .exe or .dll will omit the necessary information to provide detailed stack traces in the code you linked in from the static library.  Long story short, we need to include the .pdbs for PlugInLib, PlugInUtilities, NitfPlugInLib and HdfPlugInLib directly in the SDK and the fact that we don’t I’m now considering a bug.  All other pdbs are either for .exe’s or plug-in .dlls and those can be retrieved later (e.g. after link time) using the symbol server.

 

Thanks,

Kip

 

[1] - http://msdn.microsoft.com/en-us/library/b13s79c0.aspx

 

 

 

From: Goffena, Robert
Sent: Monday, May 23, 2011 2:29 PM
To: Streithorst, Kip; '[hidden email]'
Subject: RE: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

When I read [4] it seems i must create a manifest of files I need symbols for based on Opticks+development_extension.  If I add code which calls a new class/method from PlugInUtilties, will I need to recreate that manifest?  Or is there some way I can create a manifest that says give me all symbols, regardless of what Opticks+development_extension require?

 

 

Robert Goffena

Ball Aerospace & Technologies Corp.

2875 Presidential Dr. Fairborn, OH 45324-6269

Phone:  (937) 320-4096

Fax:  (937) 429-1687

Email:  [hidden email]

From: Streithorst, Kip
Sent: Monday, May 23, 2011 2:19 PM
To: Goffena, Robert; '[hidden email]'
Subject: RE: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

Link [4] does discuss this issue.

 

The short answer is by running symchk.exe (you get this from the Windows SDK, Debugging Tools for Windows).  SymChk.exe is the executable that can do batch grabs of .pdbs from a symbol server so you don’t need real-time access to a symbol server.

 

Thanks,

Kip

 

From: Goffena, Robert
Sent: Monday, May 23, 2011 1:08 PM
To: Streithorst, Kip; [hidden email]
Subject: RE: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

“I looked at [3] and [4] and did not see how to “grab all the symbols at once”.  How does one “grab all the symbols at once”?

 

Will this be practical for extension developers who do not have access to http://opticks.org/downloads/symstore/?

 

 

Robert Goffena

Ball Aerospace & Technologies Corp.

2875 Presidential Dr. Fairborn, OH 45324-6269

Phone:  (937) 320-4096

Fax:  (937) 429-1687

Email:  [hidden email]

From: Streithorst, Kip [mailto:[hidden email]]
Sent: Monday, May 23, 2011 12:31 PM
To: [hidden email]
Subject: [Opticks-devs] Symbol Server for Opticks - new method of gettingpdbs

 

All,

 

The current method of distributing pbds for debugging Opticks using Visual Studio is a bit problematic, you have to download a 300 MB file, unzip it and then configure multiple options in Visual Studio and this has to be repeated for every new version of Opticks.

 

Trevor and I came across Symbol Servers and have set one up for Opticks.

 

You simply edit your Visual Studio options, [1] and add http://opticks.org/downloads/symstore/ and then you can right-click on a call stack and select “Load Symbols From -> Symbol Path” and Visual Studio will download only the symbols you need from the opticks.org website and then cache them on your computer.  This will work for any version of Opticks that we push the symbols up to that server for, currently the following have been pushed up:

 

Opticks 4.6.0

Opticks 4.7.0rc1

Spectral Processing Extension 1.3.0

Spectral Processing Extension 1.4.0rc1

IDL Scripting Extension 1.3.0

IDL Scripting Extension 1.4.0rc1

Python Scripting Extension 1.3.0

Python Scripting Extension 1.4.0rc1

 

For more details on Symbol Servers, you can read the complete documentation at [2].

 

For users that may want to grab all the symbols at once instead of as-needed you can use SymChk, see [3] and [4] for more details.

 

I am interested to hear what people think of using this method of distributing pdbs.  My current thoughts are that this should be the only method of distributing them with 4.7.1 and later and as of 4.7.1 stop creating the current 300 MB zip file.

 

Thanks,

Kip

 

[1] - http://msdn.microsoft.com/en-us/library/b13s79c0.aspx

[2] - http://msdn.microsoft.com/en-us/library/ms680693%28v=VS.85%29.aspx

[3] - http://msdn.microsoft.com/en-us/library/ff560157%28v=VS.85%29.aspx

[4] - http://msdn.microsoft.com/en-us/library/ff560061%28v=VS.85%29.aspx

 

 

 

 
 
This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its
next-generation tools to help Windows* and Linux* C/C++ and Fortran
developers boost performance applications - including clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Opticks-devs mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/opticks-devs