Mozilla.com

  1. Mozilla Developer Center
  2. Main Page
  3. Linux Build Prerequisites

Linux Build Prerequisites

Hardware

  • 512MB RAM with lots of available swap space. For static and XULRunner builds, 1GB RAM minimum. Additional RAM will significantly decrease build time.
  • For debug builds: at least 1.5 GB free disk space (2 GB recommended)
  • For optimized builds: at least 300 MB free disk space (500 MB recommended)


Build Tools

  • A recent POSIX Shell
  • A C++ compiler. GCC 3.3 or higher is recommended, or your platform's native C/C++ compiler.
  • Perl 5.6 or higher Older perl versions may work if you upgrade File::Spec to version 0.8
  • GNU make 3.79.1 or higher. Other varieties of "make" will not work.
  • CVS 1.11 or higher
  • the GTK2 widget toolkit, version 2.10 or higher
  • libXt-devel for X11/Intrinsic.h, X11/Shell.h
  • libIDL 0.6.3 or higher Source snapshots are available from Mozilla via ftp. If using the RPMs, you'll need both the regular rpm and the -devel rpm. If you already have ORBit installed, then you do not need to install libIDL as ORBit bundles libIDL. You may need to install the ORBit-devel package if you use packages.
  • zip 2.3 (or higher)
  • freetype 2.1.0 (or higher)
  • fontconfig
  • pkg-config 0.9.0 (or higher)
  • dbus-1-glib-devel (Developer package for D-Bus/GLib bindings)

If you're running a Debian- or Ubuntu-derived system, you may be able to use apt-get build-dep firefox OR apt-get build-dep iceweasel and sudo apt-get install libdbus-glib-1-dev curl to pull in most of the prerequisites. The libcurl-dev package is also needed if you're building the crashreporter (on Ubuntu it's provided by either libcurl4-openssl-dev or libcurl4-gnutls-dev). Alternatively you can disable the crashreporter (option "--disable-crashreporter").

Optional Software

  • Autoconf 2.13 (which requires GNU m4) is necessary if you want to hack on configure.in. If you have no idea what this means, then don't worry about it. It's optional. Autoconf 2.5x will not work. See bug 104642 for details.

In Ubuntu you additionally have to symlink autoconf using:

 sudo ln -s /usr/bin/autoconf2.13 /usr/bin/autoconf-2.13

Alternately, you can add this line to your .mozconfig:

mk_add_options AUTOCONF=autoconf2.13

Additional Information

  • The default /bin/sh that comes with some older unices (notably OSF/1) is known to be deficient. In that case, you should use 'gmake SHELL=ksh'.
  • If you're using a glibc 2.07 system, you need this patch
  • If a build on Fedora Core 6 fails because bfd.h can't be found, install the binutils-devel package.
  • The latest trunk code may cause an error referring to '___tls_get_addr' if gcc is not the latest (past 4.1.2) or if jemalloc isn't disabled (use mozconfig option "--disable-jemalloc").

Page last modified 18:02, 16 May 2008 by Dholbert?

Files (0)