2010年5月28日 星期五

PERL PORTABLE

有鑑於前陣子家裡舊機器起死回生, 有三種OS可以跑PERL, 公司有需要用到PERL, 也可能會在別人電腦上跑PERL, 所以有了這個念頭,想把整個environment放到usb 隨身碟上, 省得同樣的設定同樣的東西要到處裝。




於是在參考 PerlMonks  Portable perl: usb thumbdrive一文後開始嘗試做自己的PERL Portable。


以下是我的步驟
1. 下載Strawberry Perl。解開,我稱這個目錄為PERL的根目錄,之後說的根目錄都是說這裡。這裡面已經包含了所有PERL需要的東西,不需要額外下載MinGw之類的了。(註1)


2. 下載GNUWin32。解開後按照程序跑,但是省略最後一步,不安裝。並把整個目錄放到根目錄下(註2)


3. 下載VIM。解開,放到根目錄裡。我一共下載了Runtime files, GUI executable, Win32 console executable。(註3)


4. 參考Strawberry Perl的strawberry-perl-5.10.1.1-portable.zip裡面的portableshell.bat檔案。自己複製貼上弄一個出來。(註4)



--------------------------------------------------
@echo off
set drive=%~dp0
set drivep=%drive%
If $#\#$==$#%drive:~-1%#$ set drivep=%drive:~0,-1%
set PATH=%drivep%\perl\site\bin;%drivep%\perl\bin;%drivep%\c\bin;%drivep%\gnuwin32\bin;%drivep%\vim72;%PATH%



set TERM=dumb
echo ----------------------------------------------
echo  Welcome to Strawberry Perl Portable Edition!
echo  * see README.portable.TXT for more info
echo ----------------------------------------------
perl -e "printf("""Perl executable: %%s\nPerl version   : %%vd\n""", $^X, $^V)" 2>nul
if ERRORLEVEL==1 echo.&echo FATAL ERROR: 'perl' does not work; check if your strawberry pack is complete!
echo.
cmd
-----------------------------------------------------

5. 這時候已經有了一個可用的PERL環境了。把整個根目錄剪下來放上USB就成了。

使用方式
進入USB後執行ortableshell.bat,並且perl relocation.pl即可。


註1. 可以使用ActivatePerl 。省去這些麻煩,不過,我就是支持opensource。
註2. 因為在linux環境慣了,所以還是繼續用這些命令。但是,當然,可以選擇unxutils囉。或是僅挑選自己會用到的命令不整個搬走。
註3. 我是vim的愛用者。而且更常用沒有GUI的vim所以同時放上了vim和gvim。
註4. 好啦,其實可以用zsh, 之後研究研究

沒有留言: