The following is a description of the steps I took in order to successfully build Firefox trunk on Windows XP SP2 using Visual Studio.NET 2005 (known as VC8 on the Mozilla sites). I used all of the following resources at some point, but not one of them worked perfectly for me--your mileage may vary. At the time of writing, VS.NET 2005 is very new, and not much has been written on using it with Mozilla builds.
Please note that I am new to the build process, and am providing this in the same spirit as the caveman who brought fire back to the group after watching lightening strike a tree--I don't understand enough to tell you why some of this worked over other methods, so you should probably start by reading the official descriptions first, and know that this is here if they don't work:
@echo off rem --- CVS Setup SET CVSROOT=:pserver:email@example.com:/cvsroot SET CVS_RSH=ssh rem --- Setup the paths to the moztools build libraries set MOZ_TOOLS=C:\proj\moztools set GLIB_PREFIX=%MOZ_TOOLS% set LIBIDL_PREFIX=%MOZ_TOOLS% rem --- Scrub these variables first SET INCLUDE= SET LIB= SET PATH=C:\;C:\windows\system32;C:\windows\system32\wbem rem --- Prepend cygwin SET PATH=C:\cygwin\bin;%PATH% rem --- Setup VC8 compiler environment vars CALL "C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat" x86 rem --- Add glib/libidl to build environment SET PATH=%PATH%;%GLIB_PREFIX%;%GLIB_PREFIX%\bin SET INCLUDE=%GLIB_PREFIX%\include;%INCLUDE% SET LIB=%GLIB_PREFIX%\lib;%LIB% rem --- moztools comes last after glib/libIDL SET PATH=%PATH%;%MOZ_TOOLS%\bin
[in c:\proj] buildsetup.bat
[in C:\proj] cvs login
[in C:\proj] cvs co mozilla/browser/config mozilla/client.mk
# Building Firefox Trunk with Debugging . $topsrcdir/browser/config/mozconfig # Put all obj files in one place, not in src tree mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-objdir ac_add_options --disable-static ac_add_options --enable-shared # Debug Build Setup Options ac_add_options --disable-optimize ac_add_options --enable-debug # I'm using Canvas for my work ac_add_options --enable-canvas
cd \proj\mozilla make -f client.mk checkout
[in \proj\mozilla] make -f client.mk build
Google has some answers to various build problems, but I found that the next thing to try is IRC (irc://moznet/) and talk to the developers directly (they have been very helpful). I used both the #firefox and #developers channels, but probably the former is the best place to start. If you're new to IRC, as I was, grab ChatZilla and learn how to use it and pastebin, which allows you to paste snippets of code or other text on the web and then share the URL. The folks on IRC will ask you to paste your failed build messages there instead of flooding the IRC channel.