Compilers for Building Firefox on Windows



The general choices for building Firefox (and Thunderbird, SeaMonkey, etc.) on Windows are the Intel C Compiler (ICC), Microsoft Visual C++ and the GNU Compiler Collection (GCC).

Note that the comments below are for 32-bit Windows unless otherwise indicated.

Intel C Compiler

I've read that the Intel C Compiler produces the best code but you have to pay for the compiler. I did a search and found a listing for a little over $300 though I think that list price is quite a bit higher. They do have a free trial available if you want to play around with it.

The anecdotal evidence that I've heard from other builders is that Microsoft's Compilers produce faster code for building Mozilla products compared to ICC.

GNU Compiler Collection

GCC has the advantages of being free and Open Source and you can usually get a hold of the bleeding edge stuff. But going with GCC means that you can't use Java and maybe other plugins. GCC is nice in that it provides much more in the way of processor support compiler optimization. This is nice for those with SSE3, 3DNow and older non-Intel processors if you can live without Java.

I've done a few Windows GCC builds in the past.

Microsoft's C Compilers

Most people use Microsoft's Compilers to build Mozilla products.

Microsoft's Compilers come in free, inexpensive and expensive versions.

The free versions usually have names like "Toolkit" and "Express Edition". The inexpensive versions, usually around $100, are aimed at non-professionals. The expensive versions that sometimes have names like "Professional", "Enterprise Edition", "Team Edition" are for professional developers and are very expensive though I'd guess that most people that have them get them paid for by their companies.

This section just says a few things about some the various options right now. Note that sometimes other pieces like the Microsoft Platform SDK are required for building Mozilla products with some editions of the compiler kit that you get.

Microsoft Visual C++ Toolkit 2003 (free)

The webpage for this is at http://msdn.microsoft.com/visualc/vctoolkit2003/ and they provide a free download. The top of the page tells you what you're getting with the Toolkit and there have been builders, notably MOOX, that have produced large numbers of Firefox kits using the free toolkit. In general, the toolkit provides command-line tools but no development GUI.

One note is that the Toolkit doesn't provide the -GL option. The -GL option is for Global Optimization which builders generally prefer to do. The option generally increases build time and sometimes code size but is generally considered to be quite beneficial.

There are discussion threads and web pages with instructions on building with the Free Toolkit and I will try to add links here to those pages in the future.

Microsoft Visual C++ 2005 Express Edition (free)

The webpage for this is at http://msdn.microsoft.com/vstudio/express/visualC/default.aspx and they provide a free download.

This kit provides the development GUI in addition to the command-line tools and you may find that the GUI is nice for other development that you do. The GUI isn't used for Building Firefox but it might be helpful in debugging.

Some builders have reported success in building Firefox with this package and there's a discussion on this at the How to build Firefox with Visual Studio 2005 Express Edition topic in the Third-Party/Unofficial Builders forum. I was able to build Firefox with this package but wasn't able to get it to run. I will try this again at some future point when I have more time.

There are some builders that used Beta editions of MSVC++ 2005 EE that produced better code than VS2003. The Betas generally a bit more functionality than the release edition like x64 support.

Microsoft Visual Studio .NET Professional 2003

This product used to cost over $1,000 but it looks like the price has come down quite a bit since the last time I looked. I'd guess that this is due to VS2005 being released.

In the past, this software listed at over $1,000 though there was a student version for about $100 that you could get at some Academic web sites. I think that homeschooling and many other classes of people were elegible for the lower prices. I'm not clear on whether or not the Academic versions provided all of the functionality of the regular retail versions.

Microsoft Visual Studio 2005 Professional Edition

This product runs a little over $1,000 from my checking on a few web sites and is probably ideal for building Firefox. My experience with the Beta was that 2005 generates better code than 2003 in addition to providing x64 tools. I've heard that it also provides for a feature called Program Guided Optimization which means that you can build an instrumented image, have your users run it for a while, gather the statistics and then build a new image that's tuned for what the users actually did. I've read that ICC and GCC provide this feature too.

I have no experience with the Released version but Microsoft will be coming out with a Trial Version in December 2005 so I may give it a try then.

I think that there may have been a person or two that used an MSDN version of VS2005 in the VS2005 Express Edition thread mentioned above which may be comparable to this version.


Return to Homepage
Updated November 24, 2005. For comments and questions, send email to Vector.x64 @ gmail.com (without the spaces).