2024/06/15(土) [n年前の日記]
#1 [prog][perl] Strawberry Perl 5.8 をインストールした
2003年頃に書かれたPerlスクリプトの動作を確認したくて、Stareberry Perl 5.8.9.5 zip版を、Windows10 x64 22H2上でインストールした。
strawberry-perl-5.8.9.5.zip を入手して解凍。今回は D:\Perls\strawberry\5.8.9.5\ にコピーしてインストール。
当時の Srawberry Perl zip版は、Portable版ではない点に注意。Portable版はどの場所に置いても動くけれど、当時の zip版は C:\strawberry にインストールされている前提で作られてしまっている。例えば Strawberry Perl 5.8 の全ファイルに対して grep で C:\strawberry を検索すると、膨大なファイルがインストール場所を決め打ちしつつ作られていることが感じられる。.exeファイルの中にすら、件の場所が埋め込まれている。
仕方ないので、シンボリックリンクを張った。C:\strawberry に D:\Perls\strawberry\5.8.9.5 があるように見せかけることにする。
strawberry-perl-5.8.9.5.zip を入手して解凍。今回は D:\Perls\strawberry\5.8.9.5\ にコピーしてインストール。
当時の Srawberry Perl zip版は、Portable版ではない点に注意。Portable版はどの場所に置いても動くけれど、当時の zip版は C:\strawberry にインストールされている前提で作られてしまっている。例えば Strawberry Perl 5.8 の全ファイルに対して grep で C:\strawberry を検索すると、膨大なファイルがインストール場所を決め打ちしつつ作られていることが感じられる。.exeファイルの中にすら、件の場所が埋め込まれている。
仕方ないので、シンボリックリンクを張った。C:\strawberry に D:\Perls\strawberry\5.8.9.5 があるように見せかけることにする。
◎ バージョン切替 :
Perlのバージョンの切替は、plch.bat というバッチファイルを作って行うようにした。やっていることは、環境変数PATHの最初のほうに、選んだ Perl のインストール場所を追加しているだけ。
_plch.bat
_plch.bat
@echo off @rem Change Perl version @rem @rem Required. Environment variables must be set in advance. @rem @rem APERL_DIR=Active Perl Directory @rem BPERL_DIR=Strawberry Perl Directory set PERLNAME1=ActivePerl 5.28.1 set PERLPATH1=D:\Perls\aperl5.28.1.0000-x64-61d1e9f2 set PERLNUMB1=5281 set PERLNAME2=ActivePerl 5.8.9.827 set PERLPATH2=D:\Perls\aperl5.8.9.827-x86-291969 set PERLNUMB2=589 set PERLNAME3=Strawberry Perl 5.32.1.1 set PERLPATH3=D:\Perls\strawberry\5.32.1.1-x64 set PERLNUMB3=532 set PERLNAME4=Strawberry Perl 5.8.9.5 set PERLPATH4=D:\Perls\strawberry\5.8.9.5 set PERLNUMB4=5895 set PPATH= if "%1"=="/h" goto USAGE if "%1"=="-h" goto USAGE if "%1"=="--help" goto USAGE if "%1"=="%PERLNUMB4%" set PPATH=%PERLPATH4% if "%1"=="%PERLNUMB3%" set PPATH=%PERLPATH3% if "%1"=="%PERLNUMB2%" set PPATH=%PERLPATH2% if "%1"=="%PERLNUMB1%" set PPATH=%PERLPATH1% if not "%PPATH%"=="" goto SETPERLDIR echo Change Perl version. echo. echo 1 : %PERLNAME1% echo 2 : %PERLNAME2% echo 3 : %PERLNAME3% echo 4 : %PERLNAME4% echo. set SELNUM= set /P SELNUM="Select number : " if "%SELNUM%"=="1" set PPATH=%PERLPATH1% if "%SELNUM%"=="2" set PPATH=%PERLPATH2% if "%SELNUM%"=="3" set PPATH=%PERLPATH3% if "%SELNUM%"=="4" set PPATH=%PERLPATH4% if not "%PPATH%"=="" goto SETPERLDIR :USAGE echo. echo ---------------------------------------- echo Usage: echo plch %PERLNUMB1% echo plch %PERLNUMB2% echo plch %PERLNUMB3% echo plch %PERLNUMB4% echo. echo %PERLNUMB1% : %PERLNAME1% echo %PERLNUMB2% : %PERLNAME2% echo %PERLNUMB3% : %PERLNAME3% echo %PERLNUMB4% : %PERLNAME4% goto END :SETPERLDIR if "%PPATH%"=="%PERLPATH3%" goto SETSTRAWBERRY if "%PPATH%"=="%PERLPATH4%" goto SETSTRAWBERRY :SETACTIVEPERL echo Select ActivePerl set APERL_DIR=%PPATH% set ADD_PATH=%APERL_DIR%\bin set PATH=%ADD_PATH%;%PATH% goto SETEND :SETSTRAWBERRY echo Select Strawberry Perl set BPERL_DIR=%PPATH% set ADD_PATH=%BPERL_DIR%\c\bin;%BPERL_DIR%\perl\site\bin;%BPERL_DIR%\perl\bin set PATH=%ADD_PATH%;%PATH% goto SETEND :SETEND echo Change Perl PATH : %PPATH% :END
[ ツッコむ ]
以上です。