Open main menu

CDOT Wiki β

Mozilla Source and Symbol Server

Revision as of 21:02, 18 October 2007 by Backinblakk (talk | contribs) (0.1 Release)

Overview

Mozilla has a symbol server for Windows builds that allows developers or users to debug nightly and release builds without having to ship debug symbols along with the builds. This can be very useful when a user has a problem that developers can't reproduce, or when you hit a crash or hang during your normal browsing, not using a debug build.

While this is very useful, it doesn't provide source-level debugging. You can see function names and call stacks, but not the source at the location, which makes stepping through code very difficult. Luckily, Microsoft does provide a means to add source info to debug symbols, called a source server. The mission of this project is to sort through the Microsoft documentation and figure out how to add this to the existing Mozilla symbol server.

Project Name

Mozilla Source and Symbol Server

Project Description

Create a source code server to work with Mozilla's current symbol server. This will allow users to do full debugs of nightly release builds with access to remote symbols and full source code.

Project Leader(s)

Lukas Blakk (lsblakk)

Project Contributor(s)

For right now I am still working on source indexing. If anyone knows how to do this - or is interested in the continued research I am doing, please get in touch with me and I'll get you up to speed on what I know so far. Most of this info can be found on my blog

Project Details

Related Bugs

0.1 Release

   * set up a localhost server
   * make buildsymbols from local build
   * load those symbols onto the local server
   * connect them up to my debugger to make sure it all works
   * get the microsoft scripts to work indexing source code to my local pdb files

Updates

So far I have set up a server and configured it to serve up PDB files. This involved running a little script to allow the MIME type for pdb files which is application/octet-stream.

I ran make buildsymbols on my local build of minefield and successfully generated a whole ton of symbol files. These were copied to my server and I have successfully loaded them into Visual Studio when debugging.

Right now the biggest barrier is a lack of information about the Microsoft Source Server - which comes with support for several version control systems but whose CVS version is apparently known to be potentially unstable. I have made one attempt at indexing the symbol files, it was unsuccessful.

Additional Resources