You can build a bleeding-edge, development version of Thunderbird using the commands below. For complete information, see the build documentation.
Installing build tools
If your system is not listed below, see the build prerequisites page.
|Ubuntu Linux:|| |
sudo apt-get build-dep thunderbird sudo apt-get install mercurial libasound2-dev libcurl4-openssl-dev libnotify-dev libiw-dev autoconf2.13 cvs sudo apt-get install yasm mesa-common-dev
|Fedora Linux:|| |
sudo yum groupinstall 'Development Tools' 'Development Libraries' 'GNOME Software Development' sudo yum install mercurial autoconf213 glibc-static libstdc++-static yasm wireless-tools-devel mesa-libGL-devel
Problems? See Mac OS X build prerequisites.
Problems? See Windows build prerequisites.
Building Thunderbird requires at least 2.5 GB of disk space, 500 MB of RAM, and lots of available swap space.
# Get the source hg clone http://hg.mozilla.org/comm-central/ cd comm-central python client.py checkout # Setup a basic .mozconfig file echo 'ac_add_options --enable-application=mail' > .mozconfig # let's build Thunderbird... echo 'mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-tb-release' >> .mozconfig # ...in this directory... # USE THIS ONLY IF NOT ON WINDOWS! Parallel compilation on Windows is # unreliable now due to bug 524149. echo 'mk_add_options MOZ_MAKE_FLAGS="-j4"' >> .mozconfig # ...quickly. # Build make -f client.mk
http://hg.mozilla.org/comm-central/with the required branch location.
- For a debug build, you need different configuration options in your
.mozconfigfile. This requires more disk space, about 2.5 GB.
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-tb-debug ac_add_options --enable-application=mail ac_add_options --enable-debug ac_add_options --disable-optimize
- On Windows, the above commands will create the
%USERPROFILE%which will likely be some subfolder of
c:\Documents and Settingson XP or below. The space in this directory name, or in your user name if it contains one, will cause the configure script to break. To (possibly) fix this,
cdto a dir without spaces before doing the "
hg clone" command above.
- comm-1.9.1 and 1.9.2 do not support 64 bit compilation. See the various prerequisite pages above for more information.
On Windows and Linux, the thunderbird executable can be found in
On Mac the thunderbird executable can be found in
objdir-tb-release/mozilla/dist/<codename><debug>.app/Contents/MacOS/ where <codename> is the branch codename, e.g.
Shredder, Lanikai, Thunderbird (
Thunderbird is used for official builds)... and <debug> is an optional value of
Debug depending if you've built a debug build or not.
Building Thunderbird and Lightning
If you've set up you build environment as above, then all you need to do is:
echo 'ac_add_options --enable-calendar' >> .mozconfig
or just add the
ac_add_options --enable-calendar line to your .mozconfig with your favourite editor.
Then just re-run the "
make -f client.mk" command above (you can do the addition before running make for the first time).
How to build again later
In your comm
-central directory, run these commands:
# Get the latest source python client.py checkout
Then just re-run the "
make -f client.mk" command above.
make will only recompile files that changed, but it's still a long haul. An incremental build can be faster.
- Checked the Thunderbird tinderbox for known failures at the time you pulled the code?
- If the trunk is broken, you may wish to consider building one of the branches (to pull the source code from a branch, just replace the url to the repository in the hg clone instruction)
- Have you searched the bug database for issues relating to your problem (e.g. platform specific issues)?
- Try asking in mozilla.dev.builds - don't forget to include details of what is in your mozconfig, and what the actual error is.