Instalando o Firefox no Slackware 10.2 sem erros de lib.so

Publicado por Perfil removido em 18/05/2007

[ Hits: 11.281 ]

 


Instalando o Firefox no Slackware 10.2 sem erros de lib.so



Instalando o Firefox...

Baixe o pacote:

$ wget http://mozilla.hongo.wide.ad.jp/pub/mozilla.org/\
firefox/releases/2.0.0.3/linux-i686/pt-BR/\
firefox-2.0.0.3.tar.gz


Descompactando:

$ tar -zxvf firefox-2.0.0.3.tar.gz

Mova o pacote do firefox para /usr/local/lib/:

# mv firefox /usr/local/lib/

Crie um link em /usr/local/bin/:

# cd /usr/local/bin/
# ln -s /usr/local/lib/firefox/firefox firefox


Execute o comando "firefox" no terminal e teste:

$ firefox

Meu Firefox sempre apresentava um problema mesmo na versão 2.0, ele sempre fechava algumas páginas sozinho perdendo alguma coisa que estava fazendo, isso me deixava nervoso, imagino que você também, por isso resolvi esse problema..

Testando esse comando:

$ ldd /usr/lib/firefox/firefox-bin
/usr/lib/firefox/firefox-bin: /usr/lib/libnss3.so: version `NSS_3.11.1' not found (required by /usr/lib/firefox/firefox-bin)
/usr/lib/firefox/firefox-bin: /usr/lib/libnss3.so: version `NSS_3.10' not found (required by /usr/lib/firefox/firefox-bin)
        libmozjs.so => not found
        libxpcom.so => not found
        libxpcom_core.so => not found
        libplds4.so => /usr/lib/libplds4.so (0x40025000)
        libplc4.so => /usr/lib/libplc4.so (0x40028000)
        libnspr4.so => /usr/lib/libnspr4.so (0x4002d000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x40061000)
        libdl.so.2 => /lib/libdl.so.2 (0x400b2000)
        libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x400b6000)
        libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x4038a000)
        libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x40406000)
        libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x4041f000)
        libpangoxft-1.0.so.0 => /usr/lib/libpangoxft-1.0.so.0 (0x40435000)
        libpangox-1.0.so.0 => /usr/lib/libpangox-1.0.so.0 (0x4043c000)
        libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x40447000)
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x4047e000)
        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x404b1000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x404b5000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40536000)
        libm.so.6 => /lib/libm.so.6 (0x40600000)
        libsmime3.so => /usr/lib/libsmime3.so (0x40623000)
        libssl3.so => /usr/lib/libssl3.so (0x40646000)
        libnss3.so => /usr/lib/libnss3.so (0x40668000)
        libsoftokn3.so => /usr/lib/libsoftokn3.so (0x406d4000)
        libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x40743000)
        libfontconfig.so.1 => /usr/X11R6/lib/libfontconfig.so.1 (0x4074b000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x40772000)
        libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x407dc000)
        libXft.so.2 => /usr/X11R6/lib/libXft.so.2 (0x4082d000)
        libxpcom_compat.so => not found
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40840000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x408f8000)
        libc.so.6 => /lib/libc.so.6 (0x40901000)
        /lib/ld-linux.so.2 (0x40000000)
        libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x40a1a000)
        libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x40a40000)
        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x40a44000)
        libXinerama.so.1 => /usr/X11R6/lib/libXinerama.so.1 (0x40a4c000)
        libXfixes.so.3 => /usr/X11R6/lib/libXfixes.so.3 (0x40a4f000)
        libXcursor.so.1 => /usr/X11R6/lib/libXcursor.so.1 (0x40a54000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x40a5d000)
        libz.so.1 => /usr/lib/libz.so.1 (0x40a6c000)
        libexpat.so.0 => /usr/lib/libexpat.so.0 (0x40a7e000)
        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x40a9e000)
        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40aa6000)

Dá pra ver que faltam alguns arquivos que dizem "not found" para funcionar corretamente o Firefox...

E onde estao esses arquivos????

Entre novamente em /usr/local/lib/firefox/ e com o comando "ls *.so" veja os arquivos que faltam no seu lib pra seu funcionamento correto.

Agora copie eles para:

# cp *.so /usr/lib/

E teste aquele comando:

$ ldd /usr/lib/firefox/firefox-bin
        libmozjs.so => /usr/lib/libmozjs.so (0x40024000)
        libxpcom.so => /usr/lib/libxpcom.so (0x400be000)
        libxpcom_core.so => /usr/lib/libxpcom_core.so (0x400c1000)
        libplds4.so => /usr/lib/libplds4.so (0x4016b000)
        libplc4.so => /usr/lib/libplc4.so (0x4016e000)
        libnspr4.so => /usr/lib/libnspr4.so (0x40172000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x4019f000)
        libdl.so.2 => /lib/libdl.so.2 (0x401f1000)
        libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x401f5000)
        libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x404c9000)
        libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x40545000)
        libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x4055e000)
        libpangoxft-1.0.so.0 => /usr/lib/libpangoxft-1.0.so.0 (0x40573000)
        libpangox-1.0.so.0 => /usr/lib/libpangox-1.0.so.0 (0x4057b000)
        libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x40586000)
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x405bd000)
        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x405f0000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x405f4000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40674000)
        libm.so.6 => /lib/libm.so.6 (0x4073f000)
        libsmime3.so => /usr/lib/libsmime3.so (0x40762000)
        libssl3.so => /usr/lib/libssl3.so (0x40783000)
        libnss3.so => /usr/lib/libnss3.so (0x407a9000)
        libsoftokn3.so => /usr/lib/libsoftokn3.so (0x40811000)
        libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x4085d000)
        libfontconfig.so.1 => /usr/X11R6/lib/libfontconfig.so.1 (0x40866000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x4088d000)
        libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x408f7000)
        libXft.so.2 => /usr/X11R6/lib/libXft.so.2 (0x40948000)
        libxpcom_compat.so => /usr/lib/libxpcom_compat.so (0x4095a000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40971000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x40a2a000)
        libc.so.6 => /lib/libc.so.6 (0x40a33000)
        /lib/ld-linux.so.2 (0x40000000)
        libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x40b4c000)
        libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x40b72000)
        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x40b75000)
        libXinerama.so.1 => /usr/X11R6/lib/libXinerama.so.1 (0x40b7e000)
        libXfixes.so.3 => /usr/X11R6/lib/libXfixes.so.3 (0x40b81000)
        libXcursor.so.1 => /usr/X11R6/lib/libXcursor.so.1 (0x40b86000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x40b8f000)
        libz.so.1 => /usr/lib/libz.so.1 (0x40b9e000)
        libexpat.so.0 => /usr/lib/libexpat.so.0 (0x40bb0000)
        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x40bd0000)
        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40bd8000)

Pronto, agora seu Firefox está sem falhas e funcionando perfeitamente.

Vlw... fiquem com Deus. =D

Outras dicas deste autor

[rsync] Sincronizando becapes e outros dados

Detecção automática de impressora no Linux

TkNotePad - Editor de textos semelhante ao bloco de notas

Desafio Linux Hacker

Debian 5 Lenny - Iceweasel como Firefox no Orkut e similares

Leitura recomendada

GPU Accelerated Flash Player - Acelerando o Flash no Firefox via GPU

SkipScreen - Agilize seus downloads no Firefox

Salvando sessões no Firefox

Instalando o modem HUAWEI E226 USB 3G da Claro no Debian

Sony Ericsson MD300 e Ubuntu 9.04 / 10.04

  

Comentários
[1] Comentário enviado por bortolotto em 18/05/2007 - 02:39h

Olá Mestre Yoda! :-)

Também sou usuário do Slackware e sua dica chamou minha atenção por se tratar de uma solução que, mesmo que funcione (não testei), IMHO não é a melhor pelos seguintes motivos:

Caso o usuário já tenha instalado o Firefox através de um pacote TGZ, poderá verificar que existe no diretório /usr/lib o diretório firefox-VERSAO e um link simbólico para esse diretório, e no diretório /usr/bin um link simbólico para o binário.
Por exemplo:
Diretório /usr/lib:
lrwxrwxrwx 1 root root 15 2007-04-28 03:28 firefox -> firefox-2.0.0.3/
drwxr-xr-x 11 root root 1232 2007-05-03 03:08 firefox-2.0.0.3/
Diretório /usr/bin:
lrwxrwxrwx 1 root root 32 2007-04-28 03:28 firefox -> /usr/lib/firefox-2.0.0.3/firefox*

Ou seja, caso o usuário proceda daquele modo estará recriando uma estrutura que já existe, no intuito de resolver um problema que não é causado por essa estrutura.

Além disso, ao copiar os arquivos *.so para /usr/lib você estará criando naquele diretório arquivos que não estarão sob controle do pkgtool ou qualquer outra ferramenta, ficando assim com a necessidade de efetuar um controle manual e ter que atualizar aqueles arquivos a cada atualização do Firefox.

O problema das bibliotecas compartilhadas apresentado pelo comando ldd pode ser corrigido facilmente acrescentando ao arquivo /etc/ld.so.conf o diretório em que estão as bibliotecas que você deseja carregar e rodando o ldconfig. Veja:

ldd antes:
libxpcom.so => not found

ldd após acrescentar /usr/lib/firefox ao arquivo /etc/ld.so.conf:
libxpcom.so => /usr/lib/firefox/libxpcom.so (0xb7e24000)

Espero ter ajudado!

Um Abraço!

[2] Comentário enviado por removido em 18/05/2007 - 18:33h

Muita boa a sua dica. No meu caso eu uso o slackware 11 e optei pelo pacote em português e realmente estava faltando algumas libs. Só deixo uma contribuição para quem gosta de total controle sobre o que instala no sistema que é para criar um pacote .tgz com o makepkg com as libs faltantes, e que depois para desinstalar é fácil.

[3] Comentário enviado por removido em 18/05/2007 - 18:40h

Só mais uma coisa, tb usei sua dica com o thunderbird e deu certo.



Contribuir com comentário