簡體   English   中英

我可以在一台計算機上同時使用 Strawberry Perl 和 ActiveState Perl 嗎?

[英]May I use Strawberry Perl and ActiveState Perl simultaneously on one computer?

我曾經刪除過一次我的ActivePerl ,所有安裝的模塊都丟失了。 所以現在我對這種問題非常小心。 由於某種原因,我現在想使用Strawberry Perl ,同時保持使用 ActiveState 的 ActivePerl。

這會導致兼容性問題嗎? 是否可取?

這不會成為問題,因為兩個 Perl 實現都會查看不同的模塊目錄。 也就是說, @INC條目會有所不同。

我在 Windows 7 Pro 實例上同時安裝了ActivePerlStrawberry Perl 我的 PATH 變量順序決定了我的 Perl 偏好。 例如,為了使用 ActivePerl,我將 PATH 設置為如下所示:

C:\Perl64\bin;C:\strawberry\perl\bin

您始終可以使用 shebang 在腳本中覆蓋它:

#!C:\strawberry\perl\bin\perl

您可以一次使用兩個(許多)不同的 Perl 版本。

將 PATH 變量設置為包含主要 Perl 路徑(perl.exe 的路徑),以確保在使用perl script.pl啟動程序時運行正確的 Perl。

您可以使用Perlbrew (或其他模塊)來幫助在您的計算機上保持多個 Perl 安裝。

它在 Windows 上可用: http : //code.activestate.com/ppm/App-perlbrew/

我為此找到了另一個解決方案。 您可以將 Perl 代碼嵌入到 Windows 批處理文件中。 通過這種方式,您可以在執行 Perl 腳本或包含模塊路徑之前設置環境變量。

@echo off
cd %TEMP%
set perl_bindir=C:\strawberry\perl\bin
set module_dir=C:\my_perl_modules
set path=%perl_bindir%;%path%

echo Launching %0 perl script

%perl_bindir%\perl.exe -I %module_dir% -x -S %0 %*
goto endofperl

#!perl -w

use strict;
print "Hello World\n";

__END__
:endofperl

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM