1
edit
Changes
→Problems
==Software Requirements==
<pre>
ash -- UNIX-like command line interpreter shell (Base category)
zip -- zip file creation (Archive category)
</pre>
==Steps to Build Firefox==
rem --- CVS Setup SET CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot SET CVS_RSH=ssh
rem --- Setup the paths to the moztools build libraries set MOZ_TOOLS=C:\assignment1\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• </pre>* Run buildsetup.bat in C:\assignment1.• <pre> c:\assignment1> buildsetup </pre> * Login to the mozilla CVS repository in C:\assignment1, type anonymous as password when prompted.<pre> C:\assignment1> cvs login</pre>• * Check out the build script <pre> C:\assignment1> cvs co mozilla/browser/config mozilla/client.mk
this will create mozilla directory within C:\assignment1
</pre>
* create a text file .mozconfig in mozilla (the following code from David's website)
<pre>
# Building Firefox Trunk with Debugging
$topsrcdir/browser/config/mozconfig
# 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</pre>
• Check out the source code from cvs
• Finally do the build
<pre>c:\assignment1\mozilla> make –f client.mk build
Once the build is successful, firefox 3.0 will be in c:\assignment1\mozilla\firefox-objdir\dist\bin
</pre>
==Problems==
My problem was failing to use the right verison of make to build firefox.
<pre> make[6]: *** [_xpidlgen/nsIContextMenuListener.h] Error 1
make[6]: Leaving directory `/cygdrive/c/proj/mozilla/firefox-objdir/embedding/browser/webBrowser'
make[5]: *** [export] Error 2
make[5]: Leaving directory `/cygdrive/c/proj/mozilla/firefox-objdir/embedding/browser'
make[4]: *** [export] Error 2
make[4]: Leaving directory `/cygdrive/c/proj/mozilla/firefox-objdir/embedding'
make[3]: *** [export_tier_gecko] Error 2
make[3]: Leaving directory `/cygdrive/c/proj/mozilla/firefox-objdir'
make[2]: *** [tier_gecko] Error 2
make[2]: Leaving directory `/cygdrive/c/proj/mozilla/firefox-objdir'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/cygdrive/c/proj/mozilla/firefox-objdir'
make: *** [build] Error 2
</pre>
[[User:elichak|elichak]] told me the site that has an older verison of cygwin.
Download cygwinBasic [http://ptolemy.berkeley.edu/ptolemyII/ptII4.0/cygwinBasic.exe here] and install it to a temp directory. Then copy make from the temp directory and paste it into the Cygwin dirctory.
==Screenshot==
==Conclusion==
I was expecting a lot of problems with the Mozilla Firefox build. This It turned out to be better then I expected as building on Windows XP professional sp2 proved to be very easy and straight forward as long as you follow the instruction closely and make sure all the version are correct. The build problems problem I encountered allowed me to understand more about the build system and how that the slightest version change can break the build.