Firefox 4 sul eeepc

Per chi usa la Xandros sul portatilino, vista la non possiblitià di aggiornare il sistema, si è  dovuto faticare per poter avere Firefox 3 funzionante, coi problemi di libreria GTK. Con l’usicta di Firefox 4, la situazione si aggrava, dato che ora è interessata la libreria standard glibc.

In questo caso il problema riguarda anche altre distribuzione con supporto a lungo termine, come la CentoOS, ed è proprio grazia ad un pacchetto rpm che si riuscirà a far funzionare Firefox 4.

Per semplicità ho scompattato l’RPM e fatto in modo che lo script automatico si arrangi per far tutto. Lo script è questo:

#!/bin/sh
echo Installazione automatizzate di Firefox 4 su Xandros -ver 0.1
echo nelle versioni senza GTK2 installata
echo Creazione della directory /opt/firefox4
mkdir /opt/firefox4
echo Modifica dei permessi sulla direcoty /opt/firefox4
chmod 777 /opt/firefox4
echo Spostamento sulla directory temoporanea
cd /tmp
echo Download di Firefox 4
wget -c http://ftp.sunet.se/pub/www/clients/mozilla.org/firefox/releases/4.0/linux-i686/it/firefox-4.0.tar.bz2
wget -c http://ftp.uni-kl.de/pub/mozilla/firefox/releases/4.0/linux-i686/it/firefox-4.0.tar.bz2
echo Estrazione di Firefox sulla temp
tar -jxf firefox-4.0.tar.bz2 --overwrite
echo Entro nella directory di Firefox
cd firefox
echo Copia i file di firefox su /opt/firefox4
cp -r * /opt/firefox4
echo Si ritorna sulla temp
cd /tmp
echo Scarico della libreria gtk2
wget -c http://download.tuxfamily.org/xepcrepo/pool-main/gtk-2.10/libgtk2.0-0_2.10.13-2~bpo.1_i386.deb
echo Crea la cartella /opt/gtk2
mkdir /opt/gtk2
echo Modifica i permessi della cartella
chmod 777 /opt/gtk2
echo Entra su /opt
cd /opt
echo Installa la libreria gtk2
dpkg-deb -x /tmp/libgtk2.0-0_2.10.13-2~bpo.1_i386.deb gtk2
echo Si ritorna sulla temp
cd /tmp
echo Scarica la libreria libc
wget -c http://eeepc901.altervista.org/download/libc.tgz
echo Scompatta la libreria
tar -xzf libc.tgz
echo sposta i files
mv libstdc++.so.6* /opt/firefox4

e lo potete scaricare da qui: http://eeepc901.altervista.org/download/install_firefox4.tar.gz

Lo script agirà come per la versione 3.6 ed in più copierà 2 files (uno regolare e un link simbolico) nella cartella di Firefox 4, permettendo così di funzionare.

Ricordo di lanciare lo script come super utente, aprendo una finestra bash in questo modo:

sudo bash

Dopo l’installazione, se avete problemi con le librerie GTK vi basta operare come in Firefox 3.6 ricordando che ora l’installazione è avvenuta dentro /opt/firefox4 e pertanto per eseguire il nuovo Firefox dovete usare /opt/firefox4/firefox

Buona navigazione 😉

 

 

 

 

57 Risposte a “Firefox 4 sul eeepc”

  1. Ciao e grazie ancora per il lavoro che stai facendo,ho provato lo script e mi da questo:

    asus-771041720:/tmp> ./install_firefox4.sh
    Installazione automatizzate di Firefox 4 su Xandros -ver 0.1
    nelle versioni senza GTK2 installata
    Creazione della directory /opt/firefox4
    mkdir: impossibile creare la directory `/opt/firefox4′: Il file esiste
    Modifica dei permessi sulla direcoty /opt/firefox4
    Spostamento sulla directory temoporanea
    Download di Firefox 3.4
    –08:34:01– http://ftp.sunet.se/pub/www/clients/mozilla.org/firefox/releases/4.0/linux-i686/it/firefox-4.0.tar.bz2
    => `firefox-4.0.tar.bz2′
    Risoluzione di http://ftp.sunet.se in corso… 194.71.11.69, 2001:6b0:19::64
    Connessione a http://ftp.sunet.se|194.71.11.69:80… connesso.
    HTTP richiesta inviata, aspetto la risposta… 416 Requested Range Not Satisfiable

    Il file è già completamente scaricato; niente da fare.

    –08:34:03– http://ftp.uni-kl.de/pub/mozilla/firefox/releases/4.0/linux-i686/it/firefox-4.0.tar.bz2
    => `firefox-4.0.tar.bz2′
    Risoluzione di http://ftp.uni-kl.de in corso… 131.246.123.4, 2001:638:208:ef1b:0:ff:fe00:4
    Connessione a http://ftp.uni-kl.de|131.246.123.4:80… connesso.
    HTTP richiesta inviata, aspetto la risposta… 416 Requested Range Not Satisfiable

    Il file è già completamente scaricato; niente da fare.

    Estrazione di Firefox sulla temp
    Entro nella directory di Firefox
    Copia i file di firefox su /opt/firefox4
    Si ritorna sulla temp
    Scarico della libreria gtk2
    –08:34:19– http://download.tuxfamily.org/xepcrepo/pool-main/gtk-2.10/libgtk2.0-0_2.10.13-2~bpo.1_i386.deb
    => `libgtk2.0-0_2.10.13-2~bpo.1_i386.deb’
    Risoluzione di download.tuxfamily.org in corso… 88.191.250.171, 88.191.250.18
    Connessione a download.tuxfamily.org|88.191.250.171:80… connesso.
    HTTP richiesta inviata, aspetto la risposta… 416 Requested Range Not Satisfiable

    Il file è già completamente scaricato; niente da fare.

    Crea la cartella /opt/gtk2
    mkdir: impossibile creare la directory `/opt/gtk2′: Il file esiste
    Modifica i permessi della cartella
    Entra su /opt
    Installa la libreria gtk2
    Si ritorna sulla temp
    Scarica la libreria libc
    –08:34:21– http://eeepc901.altervista.org/download/libc.tgz
    => `libc.tgz’
    Risoluzione di eeepc901.altervista.org in corso… 46.4.65.68
    Connessione a eeepc901.altervista.org|46.4.65.68:80… connesso.
    HTTP richiesta inviata, aspetto la risposta… 416 Requested Range Not Satisfiable

    Il file è già completamente scaricato; niente da fare.

    Scompatta la libreria
    sposta i files
    asus-771041720:/tmp>

    poi provandolo ad avviare da opt/firefox4/firefox dice che manca la libreria glibc 2.4,dov’è il problema??HELP!!!aiuto!!!

  2. Fai questo controllo giusto per scrupolo:

    sotto /opt/firefox4 dovresti trovare questi files:

    libstdc++.so.6
    libstdc++.so.6.0.10

    se mancano l’errore deriva da qui.

    Nel mio portatile non credo di avere altre librerie installate e con questo sistema ha funzionato al primo colpo…

  3. ciao,quelle librerie ci sono,ma la prima è solo un collegamento che rimanda alla seconda,forse è quello l’errore?HELP!!!!

  4. No, quello è giusto ed è il sistema usato in Linux per avere un programma che non sia legato ad un rilascio differente della stessa libreria.

    Il programma cerca la libreria xxx.so.6 da cui dipende, poi nel sistema risulterà installata l’ultima diponibile xxx.so.6.0.10. Nel momento in cui esce la xxx.so.6.0.11, basta solo cambiare il collegamento dinamico della xxx.so.6 senza dover ricompilare l’eseguibile perchè peschi la nuova versione 😉

    Riportami (copiandolo) l’errore esatto che ti dà l’esecuzione del comando
    /opt/firefox4/firefox
    così verifico se è lo stesso che ottenevo prima di usare le librerie allegate.
    Grazie

  5. questo è l’errore esatto che mi appare:

    /opt/firefox4/firefox-bin: /lib/tls/libc.so.6: version `GLIBC_2.4′ not found (required by /opt/firefox4/libstdc++.so.6)

    Press to continue…

    aspetto notizie,e grazie ancora.

  6. Ah, ok, adesso si vede che la libreria la carica, ma essa necessita di qualcosa che evidentemente nel mio portatile è già installata. Devo verificare quale programma mi aveva installato quella libreria nel passato.

  7. Bello quando le cose si fanno interessanti 🙂

    Nel mio sistema trovo che viene caricata un altra libreria libstdc++.so.6 locata in:
    /usr/lib/libstdc++.so.6
    quando viene interrogato firefox-bin (però l’avvio deve avvenire tramite lo script firefox perchè carica le variabili di sistema appropriate).

    Per cui nel sistema ho già la versione 6.0.8 installata:

    dpgk –search libstdc++

    mostra il pacchetto già installato.

    devo fare ulteriori analisi…

  8. Non ancora, però potresti provare questo comando da console e vedere se parte Firefox:

    LD_PRELOAD=/opt/firefox4 /opt/firefox4/firefox

    anche se però è un tentativo molto blando

  9. Ciao,ho provato il comando e mi da lo stesso errore che mi da se provo ad avviarlo da opt/firefox4/firefox,aspetto notizie e grazie ancora.

  10. Alcuni test sul tuo sistema:

    controlla dove si trova libtc.so.6 (presumibilmente è sotto /lib)

    poi posta l’output di questo comando:
    ldd /opt/firefox4/firefox-bin

    poi fai un tentativo:

    apri /opt/firefox4/firefox
    e modifica questa riga:
    moz_libdir=/usr/local/lib/firefox-4.0
    in
    moz_libdir=/opt/firefox4

    vedi se ti da lo stesso errore o meno

  11. Ciao ho fatto i test che mi hai detto:
    libc.so.6 si trova in effetti sotto /lib
    l’output del comando che mi hai postato è questo:

    linux-gate.so.1 => (0xb7f76000)
    libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7f56000)
    libxul.so => not found
    libxpcom.so => not found
    libmozalloc.so => not found
    libplds4.so => not found
    libplc4.so => not found
    libnspr4.so => not found
    libdl.so.2 => /lib/tls/libdl.so.2 (0xb7f50000)
    libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xb7c66000)
    libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xb7c4c000)
    libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xb7bcb000)
    libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb7bb5000)
    libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb7bad000)
    libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb7b72000)
    libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb7b10000)
    libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb7ad6000)
    libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb7ad3000)
    libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb7a41000)
    libX11.so.6 => /usr/lib/libX11.so.6 (0xb7955000)
    libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb786f000)
    libm.so.6 => /lib/tls/libm.so.6 (0xb784a000)
    libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb783f000)
    libc.so.6 => /lib/tls/libc.so.6 (0xb770d000)
    /lib/ld-linux.so.2 (0xb7f77000)
    libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb76e2000)
    libXext.so.6 => /usr/lib/libXext.so.6 (0xb76d3000)
    libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb76cb000)
    libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb76c8000)
    libXi.so.6 => /usr/lib/libXi.so.6 (0xb76c0000)
    libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb76ba000)
    libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb76b1000)
    libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb76ab000)
    libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb7680000)
    libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7616000)
    libz.so.1 => /usr/lib/libz.so.1 (0xb7602000)
    libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb75df000)
    librt.so.1 => /lib/tls/librt.so.1 (0xb75d6000)
    libXau.so.6 => /usr/lib/libXau.so.6 (0xb75d3000)
    libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb75ce000)
    libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb75ae000)
    /home/user>

    e modificando la riga che mi hai detto mi da lo stesso identico errore cioè questo

    /opt/firefox4/firefox-bin: /lib/tls/libc.so.6: version `GLIBC_2.4′ not found (required by /opt/firefox4/libstdc++.so.6)

    Press to continue…

    aspetto novità e ancora grazie.

  12. Questo non mi torna:

    libc.so.6 => /lib/tls/libc.so.6

    sul mio mi da:

    libc.so.6 => /lib/libc.so.6

    per caso hai anche una libtc.so.6 sotto /lib/tls/?

    forse è quello il problema.

  13. ho cancellato quel file sotto tls e ora opt/firefox4/firefox non si apre proprio,HELP!!!!

  14. Di solito ri rinomina il file in .old, così lo si può sempre ripristinare. Comunque di sicuro era un linksimbolico ad un file di sistema (libc.so.6.xx) sempre sotto quella cartella

    Vado a memoria, fai da super utente

    ls -la /lib/libbc.so.6

    ti apparirà qualcosa tipo (con yy un numero)
    /lib/libc.so.6 -> /lib/libc.so.6.yy

    esegui
    ln -s /lib/libc.so.6.yy /lib/tls/libc.so.6

    questo crea un link simbolico tra il punto in cui prima c’era la libreria alla libreria sotto /lib

  15. ho fatto come mi hai detto tu,ma ancora niente,questo è quello che mi esce fuori:

    /home/user> sudo bash
    asus-1386070981:/home/user> ls -la /lib/libc.so.6
    lrwxrwxrwx 1 root root 13 2007-12-18 18:14 /lib/libc.so.6 -> libc-2.3.6.so
    asus-1386070981:/home/user> ln -s /lib/libc-2.3.6.so /lib/tls/libc.so.6
    ln: creazione del link simbolico `/lib/tls/libc.so.6′ a `/lib/libc-2.3.6.so’: Il file esiste
    asus-1386070981:/home/user>

    AIUTO,HELP!!!!

  16. Dall’errore sembra che ci sia ancora il link di /lib/tls/libc.so.6 attivo.

    Controlla con
    ls -l /lib/tls/libc.so.6
    se vedi che questo file punta ancora ad un altro o meno

  17. Ciao,ho dato il comando che mi hai detto tu e mi esce fuori questo:

    /home/user> ls -l /lib/tls/libc.so.6
    lrwxrwxrwx 1 root root 13 2007-12-18 18:14 /lib/tls/libc.so.6 -> libc-2.3.6.so
    /home/user>

    che devo fare?HELP E GRAZIE

  18. Da quello che vedo hai già il collegamento che punta al file che era puntato da /lib/libc.so.6 .

    Devo controllare sul mio eeepc a dove punta, perchè la numerazione 2.3.6 mi sembra un pò strana

  19. Nel mio sistema /lib/libc.so.6 punta a /lib/libc-2.7.so

    ed effettivamente se lancio il comando

    dpkg –list libc6
    ottengo

    libc6 versione 2.7.13

    Che versione ti da nel tuo sistema?

  20. Ciao,e BUONA PASQUA E BUONA PASQUETTA,dando quel comando mi esce fuori questo:

    /home/user> dpkg –list libc6
    Desiderato=sconosciUto/Installato/Rimosso/P:eliminato/H:bloccato
    | Stato=Non/Installato/file Config./U:spacchett./conf. Fallita/H:inst.parzial.
    |/ Err?=(nessuno)/H:bloc./necess.Reinst./X=entrambi (Stato,Err: maiusc.=grave)
    ||/ Nome Versione Descrizione
    +++-==============-==============-============================================
    ii libc6 2.3.6.ds1-13 GNU C Library: Shared libraries
    /home/user>

    Che devo fare??AIUTO,HELP!!!E ANCORA AUGURI!!!!

  21. Sicuramente abbiamo versioni diverse della libc6:

    nel tuo: 2.3.6.ds1-13
    nel mio: 2.7.13

    che modello hai di eeepc? la versione sembra molto vecchia in confronto a quella nel mio.

  22. Quindi è per questo che c’è una versione così vecchia della libc. Il problema è come riuscire ad aggiornala…
    Ci vorrebbe una versione di firefox compilata totalmente staticamente, solo che la libc è talmente integrata nel sistema che dubito verrebbe inclusa anche quella nel processo 🙁

  23. Questo non è ancora detto, certo bisogna trovare il modo più indolore per cercare di avere una libc più aggiornata per poterlo eseguire.

  24. Secondo un sito inglese non è possibile cambiare la glibc al 701 perchè romprerebbe la compatibilità con tutti i programmi installati.
    Guardando il contenuto di un pacchetto deb della glibc ci sono infatti parecchie librerie inserite oltre alla libc6. L’unica alternativa che vedo è che Firefox 4 venga compilato su un ambiente con glibc vecchia, così da riavere la compatibilità.

  25. Ciao,ancora nessuna novità,ma non è possibile creare una patch o qualcosa del genere come per flashplayer 10 perche anche quello necessitava delle glibc aggiornate ma su un sito c’è una patch con le relative istruzioni che io ho seguito per installare il player,altrimenti era lo stesso discorso di firefox4,il sito è questo: http://eeepc-albkwan.blogspot.com/2009/03/install-flashplayer-10-with-svollis.html dagli un’occhiata e fammi sapere,ciao e grazie.

  26. No, la compilazione richiede di installare troppi pacchetti sull eeepc e magari usare un GCC vecchio e per cui Firefox non si compila

    >creare una patch o qualcosa del genere come per flashplayer 10 perche anche quello necessitava delle glibc aggiornate ma su un sito c’è una patch con le relative istruzioni che io ho seguito per installare il player
    Interessante come idea, bisogna vedere quanti files sono da patchare per Firefox…questo weekend faccio delle prove e metto a disposizione il programma per patchare il tutto, però poi sarà da testare se funziona o meno… 🙂

  27. Allora, premesso che non ho la più pallida idea se possa funzionare, dato che ci sono ben 8 files da patchare, scarica questo programma:

    http://eeepc901.altervista.org/download/patcher.zip

    copia il programma patcher dentro /opt/firefox4 ed eseguilo da una console eseguendo ./patcher dalla cartella di firefox4.

    ti troverai:

    libnssutil3.so
    libxul.so
    libfreebl3.so
    libsoftokn3.so
    libnssdbm3.so
    libnss3.so
    libmozsqlite3.so
    libnspr4.so

    e i relativi files patchati:

    patched.libnssutil3.so
    patched.libxul.so
    patched.libfreebl3.so
    patched.libsoftokn3.so
    patched.libnssdbm3.so
    patched.libnss3.so
    patched.libmozsqlite3.so
    patched.libnspr4.so

    per vedere se la cosa funziona, togli i files originali e rinomina i vari file creati togliendo il patched. davanti al nome del file.

  28. Ciao,volevo dirti che la patch è corrotta,quando tento di applicarla dice “errore di virgola mobile”.

  29. No, forse ho capito: l’ho compilata su X64 forzandola a i686. E’ probabile che sul celeron del eeepc701 bisogna andare più indietro con l’architettura. Domani provo a copilarla in versione i586.

  30. mi da sempre errore di virgola mobile,per la precisione mi esce fuori questo:

    /bin/bash: line 1: 4250 Errore di virgola mobile”/opt/firefox4/patcher”

    aspetto novità,grazie!

  31. Questa è compilata con un pò di opzioni che dovrebbero corrispondere al celeron-m del 701
    -m32 -march=pentium-m -pipe -fomit-frame-pointer

    prova a riscaricare lo script

  32. niente,sempre errore di virgola mobile:

    /bin/bash: line 1: 4150 Errore di virgola mobile”/opt/firefox4/patcher”

    Io comunque ho visto che l’architettura del mio eeepc è i386,quindi penso se non la prima una delle prime,aspetto tue notizie,ciao e grazie.

  33. Compilato per i386. Se non funziona neanche così, mi sa che il problema può essere delle librerie dinamiche caricate

  34. Ciao niente da fare,sempre errore di virgola mobile,per la precisione questo:

    /bin/bash: line 1: 3755 Errore di virgola mobile”/opt/firefox4/patcher”

  35. Cacchio, siete dei pazzi… bravi, esperti, ma pazzi. Ma come si fa ad andare appresso ad un computer in questo modo, avete perso di vista l’obiettivo principale: sono i pc a dover fare il lavoro e non le persone a dover lavorare per i pc… è proprio il punto di vista che è speculare alla filosofia di chi inventò i computer: facilitarsi la vita, e non complicarsela.
    Salutoni.

  36. >Ma come si fa ad andare appresso ad un computer in questo modo
    ciao,
    quando riuscirai ad usare Internet Explorer 9 su Windows 98, Windows 2000, Windows XP ti darei anche ragione, visto che Microsoft permette che sia disponibile solo per Vista e 7 🙂

    Il punto è che se hai un pc di molti anni fa con cui ti trovi bene, perchè devi per forza comprartene uno nuovo per poter navigare in internet usando le ultime tecnologie web? Qui si sta cercando di far funzionare un prodotto nuovissimo (Firefox 4) su di un pc che ormai ha i suoi anni alle spalle, ma non per questo è da considerarsi obsoleto 🙂

    >/bin/bash: line 1: 3755 Errore di virgola mobile”/opt/firefox4/patcher”
    meno del i386 non si può andare. Vedo se riesco a compilare il programma in modalità statica con tutte le librerie annesse

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.