Diário de Bordo Mudanças Recentes www.dedalu.art.brTagsRSS RSS

CompilarThunderbird3Ubuntu64bits

Por que fazer?

Objetivos

Passo a passo

Instalar pré-requisitos

Muito simples, o apt faz isso para nós:

 $ sudo apt-get build-dep thunderbird

Além disso, é necessário instalar o sistema de controle de versões mercurial e algumas bibliotecas:

 $ sudo apt-get install mercurial libasound2-dev libcurl4-openssl-dev libnotify-dev libiw-dev autoconf2.13

Clonar os repositórios padrão

Vamos criar um diretório para colocar tudo:

 $ mkdir mozilla.org
 $ cd mozilla.org

Agora usamos o mercurial (hg) para clonar o galho comm-1.9.1:

 $ hg clone http://hg.mozilla.org/releases/comm-1.9.1/

Isso cria um diretório comm-1.9.1 já com os arquivos do Thunderbird / Lighthing / Sunbird / Seamonkey etc. Dentro dele clonaremos também o repositório mozilla-1.9.1, usando um script python:

 $ cd comm-1.9.1
 $ python client.py checkout

Parece estranho, mas é lógico: o navegador é um requisito para todos eles. É isso mesmo: a partir desse diretório comm-1.9.1 poderemos compilar todos os aplicativos mozilla, inclusive o Firefox.

Clonar o repositório da tradução pt_BR

Ainda dentro do diretório comm-1.9.1,

 $ hg clone http://hg.mozilla.org/releases/l10n-mozilla-1.9.1/pt-BR

Isso criará um diretório pt-BR com todos os arquivos necessários à tradução de todos os aplicativos mozilla.

A estrutura de diretórios

Eis a estrutura final (cf. [1]):

 mozilla.org/
 + comm-1.9.1/
  + build/
  + calendar/ -- Lighthing e Sunbird
  + config/
  + directory/xpcom
  + directory/c-sdk
  + editor/
  + mail/ -- Thunderbird
  + mailnews/
  + mozilla/ - Firefox e xulrunner
  + mozilla/extensions/irc
  + mozilla/extensions/venkman
  + mozilla/extensions/inspector
  + other-licenses/
  + pt-BR/ -- os arquivos de localização para português do Brasil
  + suite/ -- SeaMonkey

Criar o arquivo .mozconfig

O arquivo comm-1.9.1/.mozconfig, comanda o processo de configuração para a compilação e para a construção de todos os aplicativos mozilla. Para nosso intento, criaremos apenas um arquivo muito simples. Há como fazer muito mais (cf. [2]).

Nosso .mozconfig deverá conter o seguinte:

 mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../objdir-tb
 mk_add_options MOZ_MAKE_FLAGS="-j4"
 ac_add_options --enable-application=mail
 ac_add_options --enable-calendar
 ac_add_options --enable-ui-locale=pt-BR
 ac_add_options --with-l10n-base=../comm-1.9.1/

Explicando:

mk_add_options
adiciona opções para o make através de client.mk.
ac_add_options
adiciona opções para o configure.
MOZ_OBJDIR=@TOPSRCDIR@/../objdir-tb
especifica o local onde estarão os arquivos compilados.
MOZ_MAKE_FLAGS="-j4"
faz com que o make faça diferentes trabalhos simultâneos.
--enable-application=mail
especifica que queremos compilar o Thunderbird.
--enable-calendar
especifica que queremos já incluir o Lighthing.
--enable-ui-locale=pt-BR
ativa a localização.
--with-l10n-base=../comm-1.9.1/
indica onde estão os arquivos de localização (atenção: em relação ao MOZ_OBJDIR).

Compilar e construir

Dentro do diretório comm-1.9.1, execute:

 $ make -f client.mk

Executar

Todo esse processo criou uma série de diretórios em mozilla.org/objdir-tb-release (o MOZ_OBJDIR). O binário está em mozilla.org/objdir-tb-release/mozilla/dist/bin.

Para executar, então:

 $ cd mozilla.org/objdir-tb-release/mozilla/dist/bin
 $ ./thunderbird

Será melhor, entretanto, criar um arquivo ~/.local/share/applications/thunderbird-3.0.desktop ou manualmente, ou usando o editor de menus:

 [Desktop Entry]
 Name=Mozilla Thunderbird 3.0 Mail/News
 Comment=Read/Write Mail/News with Mozilla Thunderbird 3.0
 Name[pt_BR]=Cliente de E-mail Mozilla Thunderbird 3.0
 Comment[pt_BR]=Ler e escrever suas mensagens com o Mozilla Thunderbird 3.0
 GenericName=Mail Client
 Exec=~/!!!SEU CAMINHO!!!/mozilla.org/objdir-tb-release/mozilla/dist/bin/thunderbird %u
 Terminal=false
 X-MultipleArgs=false
 Type=Application
 Icon=thunderbird
 Categories=Network;
 MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application /vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;
 StartupWMClass=Thunderbird-bin
 StartupNotify=true

Referências