Compilar Mozilla Firefox

Un poco harto de Iceweasel que es la versión de Firefox para Debian, la cual va todavía por la versión 10, y que los chicos de Mozilla no sacan una versión del navegador para los 64 bits me puse a leer la documentación para compilarlo por mi mismo.

El proceso es bastante sencillo. En pocos paso tendremos la versión en desarrollo.

Pre requisitos

Primero debemos instalar algunos paquetes que nos haran falta para compilar el código

Ubuntu

# apt-get install mercurial g++ make autoconf2.13 yasm libgtk2.0-dev libglib2.0-dev libdbus-1-dev libdbus-glib-1-dev libasound2-dev libcurl4-openssl-dev libiw-dev libxt-dev mesa-common-dev

Debian

# aptitude install mercurial libasound2-dev libcurl4-openssl-dev libnotify-dev libxt-dev libiw-dev libidl-dev mesa-common-dev autoconf2.13 yasm libgtk2.0-dev libdbus-1-dev libdbus-glib-1-dev

openSUSE/SUSE Linux Enterprise

# zypper install \
  make cvs mercurial zip gcc-c++ gtk2-devel xorg-x11-libXt-devel libidl-devel \
  freetype2-devel fontconfig-devel pkg-config dbus-1-glib-devel mesa-devel \
  libcurl-devel libnotify-devel alsa-devel autoconf213 libiw-devel yasm

Arch Linux

# pacman -Syu base-devel zip unzip freetype2 fontconfig pkg-config gtk2 dbus-glib iw libidl2 python2 mercurial alsa-lib curl libnotify libxt mesa autoconf2.13 yasm wireless_tools

Descargar el código

Vamos a sincronizar contra un repositorio de Mercurial, así que podemos crear un directorio en nuestro $HOME, cuando sincronicemos se creará el directorio mozilla-central.

Para sincronizar, entramos al directorio y escribimos:

$ hg clone https://hg.mozilla.org/mozilla-central

Dependiendo de nuestra conexión tardará más o menos.

Compilando

A la hora de compilar tenemos la oportunidad de configurar a nuestro gusto el software mediante el uso del fichero .mozconfig situado en /path/to/mozilla-central. Sin embargo es muy importante saber qué se está haciendo. Si no queremos enredarnos en este asunto, la compilación con los valores por defecto produce un software idéntico al que libera Mozilla con cada lanzamiento.

Para compilarlo, los desarrolladores incluyen un script que facilita la tarea. Entramos al directorio y lo ejecutamos.

$ cd /path/to/mozilla-central
$ ./mach build

La compilación tardará más o menos según la máquina en la que se ejecute.

Ejecución

Una vez haya acabado tendremos un fichero binario situado en:

/path/to/mozilla-central/obj-.../dist/bin/firefox

Los puntos suspensivos se completaran según la arquitectura, por ejemplo en mi caso es:

obj-x86_64-unknown-linux-gnu

Actualizando

A partir de ahora, cada vez que queramos obtener la última versión del navegador tendremos que actualizar el repositorio haciendo esto:

hg pull -u

y volveremos a ejecutar el comando march como hemos indicado arriba.

Referencia

Mozilla Developer Network – Simple Firefox build

Comments are closed.