Firefox 18+ può essere compilato su RHEL 5.9?


2

Ho provato a compilare Firefox 24 su RHEL 5.9 e mi sono imbattuto nell'inferno delle dipendenze.

Non ho i privilegi di root e ho compilato molte delle dipendenze (glib, cairo e quant'altro) in una delle mie directory. Non sono riuscito a compilare pango (1.20.5) con questo errore che non sono riuscito a risolvere: /work/usr/lib/libcairo.so: riferimento indefinito a `XRenderFindVisualFormat '.

Ora la mia domanda è: è possibile compilare FF24 su RHEL 5.9 e, in tal caso, può consigliarmi una procedura su come procedere sistematicamente?

Modificare:

Ho provato la soluzione con prefisso gentoo: dopo aver installato il prefisso con bootstrap-prefix.sh su / work / gentoo:

  • Aggiunta una riga USE="-*"a$EPREFIX/etc/portage/make.conf
  • Aggiunta una riga PYTHON_TARGETS = "python2_7" a $EPREFIX/etc/portage/make.conf
  • nasm su host era troppo vecchio (versione NASM 0.98.39 compilata il 12 luglio 2006), quindi la costruzione di media-libs / libjpeg-turbo-1.3.1 non è riuscita. emerge nasmaggiustato.
  • emerge --autounmask-write '<media-libs/mesa-10.2'
  • emerge --autounmask-write firefox

Per avviare Firefox, utilizzo uno script:

#!/bin/bash
PREFIX=/work/gentoo
COMMAND="${PREFIX}/usr/lib/firefox/firefox $1"
env -i HOME=$HOME TERM=$TERM USER=$USER $PREFIX/bin/bash -l -c "export DISPLAY=:0.0 ; ${COMMAND}"

Sfortunatamente, non riesco a passare un file a quello script, quindi Firefox lo apre automaticamente. Inoltre - e questo è un problema più serio - lo scorrimento con la rotellina del mouse è difettoso e il cambio delle schede facendo clic su di essi non funziona. Quindi tutto lo sforzo è stato vano) o:


Cosa succede quando si passa un file a Firefox? Inoltre, non penso che sia necessario ripristinare l'ambiente - in una shell normale (cioè non prefisso) basta chiamare il percorso diretto al binario di Firefox.
Wilfred Hughes,

Risposte:


0

È possibile compilare Firefox su RHEL 5 utilizzando Gentoo Prefix . È un po 'di lavoro (il canale IRC di Prefix è utile) ma l'uso di un gestore di pacchetti adeguato significa che tutte le dipendenze vengono gestite per te.

Bootstrap Prefix, quindi installa Firefox con:

$ ~/gentoo/startprefix # wherever your prefix shell script is
$ emerge -a firefox
$ export DISPLAY=:0.0 # Use the existing Xorg installed
$ firefox

Nota che Firefox 30 è l'ultima versione che verrà eseguita su RHEL 5. Firefox 31+ dipende da mesa 10.2+. mesa 10.2+ ha una dipendenza build-time da libudev e udev, che non può essere costruita sul prefisso Gentoo.


Ci ho provato ma fallisce: emerge: non ci sono ebuild da soddisfare "> = sys-apps / dbus-1.6.18-r1 [abi_x86_32 (-) ?, abi_x86_64 (-)?, Abi_x86_x32 (-) ?, abi_mips_n32 (-) ?, abi_mips_n64 (-) ?, abi_mips_o32 (-) ?, abi_ppc_32 (-) ?, abi_ppc_64 (-) ?, abi_s390_32 (-) ?, abi_s390_64 (-)?]".
Thomas M,

Prova a emergere una versione precedente di dbus e costruire Firefox contro quello. eix sys-apps/dbusmostra le versioni, quindi emerge -av =dbus-1.6.8-r1(la versione che ho installato attualmente). In caso contrario, chiedere su IRC.
Wilfred Hughes,

Ho provato USE = "- dbus", quindi emerge -a firefox, poi ho ottenuto: emerge: non ci sono ebuild da soddisfare "> = sys-apps / util-linux-2.24.1-r3 [abi_x86_32 (-) ?, abi_x86_64 (-) ?, abi_x86_x32 (-) ?, abi_mips_n32 (-) ?, abi_mips_n64 (-) ?, abi_mips_o32 (-) ?, abi_ppc_32 (-) ?, abi_ppc_64 (-) ?, abi_s390_32 (-) ?, abi_s390_64 ( -?)]".
Thomas M,

hai anche ricevuto questo messaggio durante l'installazione di util-linux: "Il tuo glibc host è troppo vecchio; abilitando il flag del compilatore -fgnu89-inline. bug 473524"?
Thomas M,

Sto usando util-linux 2.17, non sono stato in grado di aggiornare a causa di quell'errore. L'avvertimento glibc è solo un avvertimento.
Wilfred Hughes,

0
emerge --autounmask-write firefox

dovrebbe essere sostituito da

emerge -p --autounmask-write firefox

Subito dopo quel passaggio, in $ EPREFIX / etc / portage / make.conf è necessario sostituirlo

USE="-*"

di

USE="-keyword1 -keyword2 -keyword3 ... -keywordN"

dove parola chiave1 parola chiave2 parola chiave3, ... parola chiave N deve essere sostituita dai vari flag USE indicati da emerge -p --autounmask-write firefox. Se emerge -p --autounmask-write firefoxmostrato

[ebuild   R    ] app-text/recode-3.6_p17-r2  USE="nls (prefix%*) -static-libs" 2,021 kB

Quindi potresti usare

USE="-nls -static-libs"

Questo ti darà qualcosa con un effetto esattamente equivalente a USE="-*".

Al passaggio successivo, dovresti provare a indovinare quali degli elementi in USE sono quelli che impediscono "lo scorrimento con la rotellina del mouse è difettoso e il cambio di scheda facendo clic su di essi". Ad esempio, se è -nls, allora dovresti sostituire -nls con + nls (o con niente) nella variabile USE.

Puoi cercare http://www.gentoo.org/dyn/use-index.xml per tenere traccia delle parole chiave USE relative al mouse.

Successivamente, applica i passaggi seguenti per compilare un firefox compatibile con il mouse:

emerge --autounmask-write firefox
mv $EPREFIX/etc/portage/.*package.use $EPREFIX/etc/portage/package.use
emerge firefox

Nota: penso che una variabile USE abbreviata in una manciata di parole chiave sia sufficiente per creare Firefox. Segnalalo qui e su IRC se riesci a trovarlo.


-1

Ciò presuppone che tu abbia l'accesso come root per installare vari RPMS, quindi non sono sicuro di come aggirare questo, ma è possibile costruire FF24 su EL5.

Dai un'occhiata a questo articolo .


Questa è una citazione dalla domanda: "... puoi consigliare una procedura su come procedere sistematicamente?" Dire semplicemente "è possibile" non è molto utile.
Mosè,

Il link pubblicato da @ james-p contiene informazioni preziose. Proverò sicuramente ciò che viene suggerito lì.
Thomas M,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.