2009-10-06 111 views
6

如何在64位機器上安裝32位Perl而不影響使用64位Perl的現有應用程序?是否有可能讓單個應用程序(讀取:單個文件)針對不同的任務使用不同版本的Perl?如何在不打擾現有安裝的情況下安裝單獨的perl?

+0

RHEL = Red Hat Enterprise Linux。 http://en.wikipedia.org/wiki/Red_Hat_Enterprise_Linux – 2009-10-06 18:40:42

+0

無論誰修改問題標題都是不正確的,因爲它不完整。 – aartist 2009-10-06 21:14:47

+0

@aartist新標題指的是您的問題屬於特定實例的一般問題類別;-) – 2009-10-06 21:40:32

回答

14

在不同的目錄安裝自定義的Perl,說/opt/perl-5.10.1-32bit以及您想使用這個自定義版本的腳本指定路徑:

#!/opt/perl-5.10.1-32bit/perl 

爲腳本的第一行。

例如,僅僅在幾分鐘前,我做了:

 
$ ./configure -Dprefix=/opt/perl-5.11.0 
+0

我可以在哪裏找到32位Perl? – aartist 2009-10-09 21:39:26

+0

我如何在64位系統上安裝32位Perl? – aartist 2009-10-09 21:41:33

2

你不能用perl的兩個版本什麼應該是相當明顯的原因正在運行的程序。不知道你爲什麼要做到這一點,這裏有一些想法:

  1. 你可以編譯使用64位整型和浮點(-Duselongdouble -Duse64bitint)一個32位的Perl;
  2. 你可能有兩個進程,一個使用你的64位perl而另一個使用32位,並使用管道或共享內存在它們之間傳遞數據。

如果你需要64位精度,但也需要鏈接到32位庫#1可能會有所幫助。 #2顯然是一個更一般的解決方案,但可能會更難和/或更慢,因爲通信點可能是一個瓶頸。

3

您可能會感興趣由劉康民perlbrew。它允許您輕鬆安裝多個版本的perl。

下載並安裝後,運行

perlbrew -h 

查看選項。查看文檔,它似乎能夠像思南和馬克所說的那樣使用-D選項。

相關問題