Pre requisitos do Linux

Video Tutorial

Se voce prefere acompanhe os videos para as páginas wiki, existe um disponível para usuarios Linux.

Hardware

  • 512MB RAM com muito espaço de swap disponível. Para estatica e  XULRunner compilações, 1GB RAM minimo. RAM adicional  permitirá significativa melhora no tempo de compilação.
  • Para depuração de compilação: No mínimo 2 GB livre em disco (2.5 GB recomendado)
  • Para otimizar a compilação: no mínimo 600 MB livre em disco (1 GB recomendado)

Ferramentas de compilação e Dependencias

Todas distribuições - Uma única linha de comando

Tente executar a instrução abaixo para instalar todos pre requisitos de sistema:

wget https://hg.mozilla.org/mozilla-central/raw-file/default/python/mozboot/bin/bootstrap.py && python bootstrap.py

Se isto não funcionar, continue em uma das seções abaixo.

Ubuntu

Voce pode baixar e instalar todos os pre requisitos com o seguinte comando:

sudo 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 libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev

libcurl4-openssl-dev e requerido somente para reportar erro de depuração. Se você esta usando o --disable-crashreporter opção de configuração, então você não precisa instalar este.

Se voce está usando o chroot como seu modo de compilação, então voce pode precisar instalar algumas dependências adicionais com o seguinte comando:

sudo apt-get install zip unzip

Estas instruções devem instalar o compilador padrão para a sua atual distribuição Ubuntu. Se voce prefere usar GCC 4.5, então este é disponível para o Ubuntu 11.04 e mais novos, voce deverá instala - lo manualmente com:

sudo apt-get install g++-4.5

Se voce fez isto, lembre - se que voce precisa definir cc e cxx em seu ambiente para apontar o correto depurador.

Debian

Voce pode baixar e instalar todos os pre requisitos com este comando (como administrador):

aptitude install zip 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 python-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev

Se voce esta executando com o modo chroot  , ou com o mínimo instalado, voce pode também precisar instalar alguns pacotes básicos:

aptitude install unzip gcc g++ make patch 

Adicionais para Debian Squeeze

No Debian Squeeze, voce precisa instalar yasm-1.x para squeeze-backports. Voce pode também obter mercurial se voce precisa de compatibilidade com um repositório mercurial 2.x existente.

echo "deb http://backports.debian.org/debian-backports squeeze-backports main" >> /etc/apt/sources.list
aptitude update
aptitude -t squeeze-backports install yasm mercurial

Debian Squeeze tem somente Python 2.6 e sistema de compilaçao Mozilla perguntas para Python 2.7. Mas python 2.7 e o Debian Wheezy e um misto dos pacotes do Debian para diferentes versões podem ser feitas com apt pinning, isto não é recomendado por que ele pode deixar seu sistema instavel, e voce poderá ter vários problemas de dependencias.

A mais fácil solução e usar pythonbrew.

# Make sure you have libbz2-dev installed before, it's needed to have bz2 module in Python.
aptitude install libbz2-dev

# Install pythonbrew like described in the documentation
curl -kL http://xrl.us/pythonbrewinstall | bash

# Install Python 2.7 and make it the default
pythonbrew install 2.7.3
pythonbrew switch 2.7.3

# Check version
python --version

openSUSE/SUSE Versões Linux

Execute o seguinte comando (como root):

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 \
  dbus-1-glib-devel gtk2-devel gstreamer010-devel gstreamer010-plugins-base-devel

RedHat Versão Linux (RHEL)/CentOS/Fedora

Execute o seguinte comando

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 alsa-lib-devel libXt-devel gstreamer-devel gstreamer-plugins-base-devel
# 'Development tools' is defunct in Fedora 19 use the following
sudo yum groupinstall 'C Development Tools and Libraries'

 

RHEL/CentOS não incluiu Mercurial em seus repositorios. Voce pode instalar o pacote RPM diretamente para RPMForge (http://packages.sw.be/mercurial/) usando o seguinte comando (mude para a sua correta versão/arquitetura):

wget http://packages.sw.be/mercurial/mercurial-VERSION.rpm
rpm -Uhv mercurial-VERSION.rpm

Se voce ja tem adicionado o repositorio RPMForge para seu sistema, simplesmente yum install mercurial deve trabalhar bem.

If you have already added the RPMForge repositories to your system, a simple yum install mercurial should work as well.

Arquitetura Linux

Instale os seguintes pacotes:

pacman -Syu --needed 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 gstreamer0.10 gstreamer0.10-base-plugins

Python

Observe que Python 3 e o padrão para a arquitetura Linux, contudo Mozilla requer python2, escolha a instalação acima. Existem poucos caminhos para trabalhar com este. Um e adicionar

mk_add_options PYTHON=/usr/bin/python2

Para seu .mozconfig arquivos, e compile pelo utilitário de construção do Mozilla (mach) com o script python 2 (escolha este):

python2 mach build

Outro método e criar um link simbolico para python 2 em seu ~/bin diretorio,

mkdir ~/bin
ln -s `which python2` ~/bin/python

E acrecente ~/bin para iniciar o seu $PATH.

export PATH=~/bin:$PATH

Outros métodos, e.g alias python=/usr/bin/python2 pode não funcionar.

Autoconfigurações

A versão padrão de arquitetura atual e 2.69, no entanto o Mozilla requer 2.13, escolha a instalação abaixo (Veja o nome de execução e diferente que o pacote). Adicione está linha para seu arquivo .mozconfig :

 

mk_add_options AUTOCONF=autoconf-2.13

Todos os outros sistemas

Nos outros sistemas, voce pode instalar as ferramentas individualmente:

mkdir ~/bin
ln -sf `which python2` ~/bin/python
  • O recente terminal POSIX
  • O compilador C++. GCC 3.4 ou melhor recomendado, ou sua plataforma nativa C/C++ do compilador.
  • Perl 5.6GNU make ou superior. Antigas versões do perl podem funcionar se voce acrescentar File::Spec para versão 0.8
  • GNU make 3.80 ou superior. Outras versões "podem" não funcionar.
  • O kit GTK2  versão 2.10 ou superior.
  • libXt-devel for X11/Intrinsic.h, X11/Shell.h
  • libIDL 0.6.3 ou distribuição superior são disponíveis para Mozilla via ftp. Se voce usa pacotes RPM, voce pode precisar dos pacotes estaveis RPM e o -develrpm. Se voce já tem o ORBit instalado, então voce não precisa instalar libIDL com o ORBit pacotes libIDL. Voce pode precisar instalar o pacote ORBit-devel se voce usa pacotes.
  • zip 2.3 (ou superior)
  • freetype 2.1.0 (ou superior)
  • fontconfig
  • libgstreamer 0.10 (ou superior) e seus plugins base
  • pkg-config 0.9.0 (ou superior)
  • dbus-1-glib-devel (Pacote de desenvolvimento para D-Bus/GLib bindings)
  • libasound2-dev (necessário para Ogg support)
  • libnotify-dev
  • Yasm versão 1.1.0 ou superior.
  • autoconf-2.13 (requerida GNU m4) - configurações automáticas 2.5x não devem funcionar. Ver bug 104642 para mais detalhes.

Para instalar autoconf-2.13 do espelho:

wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz
tar -xvzf autoconf-2.13.tar.gz
cd autoconf-2.13/
./configure --program-suffix=2.13
make
sudo make install

Voce poderá precisar export AUTOCONF=autoconf2.13 em sua versão (e.g. acrescente isto em .profile em seu diretório pessoal) ou adicione está linha em seu .mozconfig arquivos:

mk_add_options AUTOCONF=autoconf2.13

Informações adicionais

Etiquetas do documento e colaboradores

 Colaboradores desta página: estevamdf
 Última atualização por: estevamdf,