Open main menu

CDOT Wiki β

Real World Mozilla Build Mozilla Lab

Overview

This lab is designed to give you first-hand experience building Mozilla from source code. This includes setting-up a proper development/build environment, using CVS to obtain the code, configuring your build, and actually doing a complete build.

By the end of this lab you should have a functioning debug trunk build of Firefox, which we'll use for the remainder of the week for our other development work.

Instructions

In order to build Mozilla from source you must create a build environment. On Windows, this must include Mozilla Build (1.2 or newer) and MSVC 8. Once installed (and these are already installed int he lab) you only need to run start-msvc8.bat (there is a link on the desktop) to begin (i.e., you shouldn't need to install anything). On Linux, just install the standard development tools and libraries (e.g., on Fedora, use "yum groupinstall 'Development Tools' 'Development Libraries' 'GNOME Software Development'").

  1. If on Windows on a lab machine, create a directory called C:\ff to hold the source -- if on Linux in the lab, use the /tmp directory, or your home directory on your own system.
  2. Make sure the tree is not red on tinderbox
  3. Check-out the Firefox code from CVS into the appropriate directory (instructions are here). You can use either of the following CVSROOT values:
    •  :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
    •  :pserver:anonymous@hera.senecac.on.ca:/cvsroot
  4. Create a .mozconfig file (instructions are here) in C:\ff\mozilla with the following:
    • Use an Object Directory (OBJDIR) named objdir
    • Disable Optimization
    • Enable Debugging
    • Use Shared libraries instead of Static
  5. Build the source (instructions are here)
  6. wait, wait, wait...NOTE: the build process (a debug build) takes approximately 1 hour to complete in the lab.
  7. Test your new browser:
    1. Set the following environment variable to turn-off assertion dialogs, and run Firefox as follows (NOTE: -no-remote allows for another version of the browser to be run at the same time, and -Profilemanager allows you to choose/create a new profile so you don't corrupt your default profile):
      • export XPCOM_DEBUG_BREAK=warn
    2. Run the browser as follows:
      C:\ff\mozilla\objdir\dist\bin\firefox -Profilemanager -no-remote
    3. When prompted, create a new profile called development
    4. In the address bar, enter the following URI and note the build information: about:

Resources