2012-07-25 16 views
5

Mi piacerebbe poter installare più versioni di Perl, ma ho bisogno di averle anche per architettura.Utilizzo di perlbrew è possibile eseguire più installazioni per architettura?

So che posso usare perlbrew per ottenere installazioni per versione: 5.10.1, 5.12.3, 5.16.0, ecc. Non sono riuscito a trovare un modo per avere anche installazioni per architettura, Solaris-sparc, Solaris -x86, Linux-i686, x86_64-Linux, ecc

facendo un hand install posso fare questo

non è un grosso problema facendo mano installa ma perlbrew fa alcune cose più facili in materia di gestione e così via.

MODIFICA: Come evidenziato nei commenti Sto usando una directory home comune NFS montata su varie piattaforme.

+0

Cosa stai cercando di fare? Installa la versione di solaris-sparc su linux-x86_64? Come ti aiuterebbe? –

+0

Ho una directory home comune montata via NFS. Quando accedo ad un host Solaris ottengo 'perl: Can not find/lib64/ld-linux-x86-64.so.2'. Come suggerito da hobbs, posso usare '--as' per creare un nome per questo e fare in modo che la mia shell di configurazione passi al Perl corretto quando eseguo il ssh su un host. –

risposta

4

È possibile utilizzare l'opzione --as-perlbrew install per dare un installare un nome diverso (per evitare scontri con la stessa versione), e si può passare qualsiasi Configure-D, -U, o -A opzioni per perlbrew e li passerà attraverso . Ma non riesco a vedere come un perl per un arco diverso sia utile nel contesto di perlbrew.

Ecco un esempio di installazione 32bit Perl su una macchina a 64 bit reale utilizzando perlbrew:

perlbrew install perl-5.8.8 --as perl-5.8.8-i386-linux-thread-multi -Dcc='cc -m32' -Dplibpth='/lib64 /usr/lib64 /usr/lib/ /usr/lib/x86_64-linux-gnu/' -Darchname=i386-linux-thread-multi -Dusethreads 

Opzioni passate allo Configure attraverso -D varierà in base all'ambiente e alle esigenze specifiche.

+0

La mia macchina principale è Linux x86_64 bit. Tuttavia, lavoro anche con gli host Solaris. Quando scrivo in essi ottengo: 'perl: Impossibile trovare/lib64/ld-linux-x86-64.so.2'. Per quanto posso dire, è perché la mia installazione Perl di default è stata compilata su Linux. Grazie per le informazioni, darò un giro. –

+0

Installare la versione Solaris da Solaris e la versione Linux da Linux. Questo sarà probabilmente meno doloroso della compilazione incrociata. E dovrai assicurarti di passare alla versione di perl supportata dalla tua piattaforma. –

+0

Un'ultima cosa: i moduli non saranno condivisi su piattaforme diverse poiché le diverse versioni usano differenti directory lib. I moduli Pure Perl possono essere condivisibili, ma tutto ciò che necessita di compilazioni (XS, Swig, Inline :: C *) non funzionerà su tutte le piattaforme. –