Changes

Jump to: navigation, search

Distcc mozilla tutorial

1,213 bytes added, 18:16, 20 April 2007
no edit summary
=What is this?=
 This is a tutorial to get distcc to compile Mozilla Firefox on Windows using cygwin.
=Requirements=
 
# Window machines. For distcc to be of any use, there should be at least 2 machines
# Cygwin. You will need gcc to build distcc. We built build using gcc-3.4.4
# [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites Mozilla requirements]
# Patience
 
=Building distcc=
 
Checkout, build, and install the distcc source
 
svn co svn://cdot.senecac.on.ca/distcc/trunk
cd trunk && ./configure && make && make install
 
Checkout the Mozilla source. If you are using the latest version of trunk, than you are fine. If you are building 2.0.0.3 or below, you need to apply a silly [https://bugzilla.mozilla.org/show_bug.cgi?id=374563 patch].
=MOZCONFIG=
 Currently, distcc does not transmit debug .pdb files(i.e., it can only send back one file). So you cannot currently do a debug build. Here is a sample MOZCONFIG file. All you need to do is modify the object directory (MOZ_OBJDIR).
'''Note the last line''', which is required for any MOZCONFIG file that wants to build using distcc.
mk_add_options MOZ_CO_PROJECT=browser
mk_add_options MOZ_MAKE_FLAGS="CC='distcc cl' CXX='distcc cl' -j4"
 
-j4 is quite important. According to the man page, you should set the number of jobs equal to the number of all cpus (or cores) + 2.
=Environment=
The only required environment variable is DISTCC_CL_HOSTS, which contain a space delimited list of all slave machines.
The only required environment variable is ''Example :'DISTCC_CL_HOSTS''' export DISTCC_CL_HOSTS="localhost 10.0.0.2 10.0, which contains a space delimited list of all slave machines.0 You must set this variable on the master machine (the machine that contains the source code).4
export DISTCC_CL_HOSTS="localhost 10.0.0.2 10.0.0.4"
<!--
This section explains some useful environment variables that you can use.
-->
=Check outDistcc Daemon=TODO : NOTE THE PATCH FOR FIREFOX 2.0 BUILDS
CheckoutStart the distcc daemon. The only thing you need to change is who is allowed to use the daemon. You can use a space-delimited list of IP addresses, build, and install or specify the distcc sourceCIDR mask of an entire subnet.  distccd --allow '10.0.0.0/24' --daemon
''svn co svn://cdot.senecac.on.ca/distcc/trunk''=Compile Mozilla=
You should now be able to compile Mozilla. You won''t notice distributing immediately./configure && make && make installBut you can monitor the progress using the distcc-text or distcc-gnome utility, or using the 'Task Manager'. Sometimes, mozilla forces -j1 in some directories. So be prepared for that.
=Complaints=
Checkout the If you feel that these instructions are poorly written, or are having trouble using distcc to compile mozilla source. Have your MOZCONFIG file set and readybecause something is unclear, and do please leave a ''make -f clientmessage in the discussion page.mk build'' on the sourceI appreciate any feedback (good/bad) in hopes of improving this documentation.
=Build=You do not have to leave a contact or your name.
1
edit

Navigation menu