2012-07-25 45 views
5

我想能夠安裝Perl的多個版本,但我也需要通過體系結構來安裝它們。使用perlbrew可以按架構進行多次安裝嗎?

我知道我可以使用perlbrew獲得安裝版本:5.10.1,5.12.3,5.16.0等。我找不到方法也有架構安裝,Solaris-sparc,Solaris -x86,Linux的i686的,Linux的x86_64的,等

做一個hand install我能做到這一點

這沒什麼大不了做手工安裝,但perlbrew使得一些事情變得更容易關於管理和這樣。

編輯:正如在評論中提出的,我使用了跨各種平臺安裝的通用主目錄NFS。

+0

你想做什麼?在linux-x86_64上安裝solaris-sparc版本?這對你有什麼幫助? – 2012-07-25 13:41:49

+0

我有一個通過NFS安裝的普通家庭目錄。當我登錄到Solaris主機時,我得到'perl:找不到/ lib64/ld-linux-x86-64.so.2'。正如hobbs所建議的,我可以使用'--as'爲它創建一個名稱,並在我登錄到主機時讓shell配置切換到正確的Perl。 – 2012-07-25 13:58:28

回答

4

可以使用--as選項perlbrew install給一個安裝一個不同的名稱(以避免使用相同版本的衝突),你可以通過任何Configure-D-U,或-A選項perlbrew,它會通過他們通過。但是我也沒有看到在perlbrew的背景下,不同拱形的perl是如何有用的。

下面是使用perlbrew實際的64位計算機上安裝32位的perl的例子:

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 

旗通過-D傳遞給Configure會根據環境和特定需求。

+0

我的主機是Linux x86_64位。但是,我也使用Solaris主機。當我ssh進入他們時,我得到:'perl:找不到/ lib64/ld-linux-x86-64.so.2'。就我所知,這是因爲我的默認Perl安裝是在Linux上編譯的。感謝您的信息,我會給它一個旋轉。 – 2012-07-25 13:52:56

+0

從Solaris安裝Solaris版本和從Linux安裝Linux版本。這可能比交叉編譯更不痛苦。你將不得不確保切換到你的平臺支持的perl版本。 – 2012-07-25 14:29:30

+0

還有一件事:模塊不會在不同的平臺上共享,因爲不同的版本使用不同的lib目錄。純Perl模塊可能是可共享的,但任何需要編譯的東西(XS,Swig,Inline :: C *)都不能跨平臺工作。 – 2012-07-25 14:33:15

相關問題