轉載自http://www.zilhua.com
在本博客中,所有的軟件安裝都在服務器上,且無root權限。理論上適合所有的用戶。
我的安裝目錄 cd /home/zilhua/software
1、在官方網站下載新版本的源碼包:
http://www.perl.org/get.html,版本自己選擇,我下載的是perl-5.18.0.tar.gz
2、解壓
tar zxvf perl-5.18.0.tar.gz
3.進入解壓目錄
cd /home/zilhua/software/perl-5.18.0
4.編譯
./Configure –help的提示如下:
./Configure -des -Dprefix=/home/zilhua/software/perl-5.18.0 -Dusethreads
make //這個過程會比較久,因爲源碼文件有那麼大。
make install
等待這個命令完成後,基本安裝就完成了。
5.更改路徑
vim ~/.bashrc
在裏面添加:
export PATH=/home/zilhua/software/perl-5.18.0/bin:$PATH
保存,更新路徑:source ~/.bashrc
==============================================
這樣就能保證你安裝不需要root權限,在以後安裝模塊時,也不需要root權限了。
那麼怎麼在無root的情況下安裝模塊了?
方法一:安裝上面的方法安裝perl之後,安裝模塊用cpan也不需要root權限了:
perl -MCPAN -e shell
方法二:手動安裝模塊:
進入模塊所在路徑,就是你的模塊安裝到哪裏,你就cd進去,然後執行下面的命令…
perl Makefile.PL PREFIX=/home/zilhua/software/perl-5.18.0/lib
make;
make test;
make install
注意PREFI的格式,必須要寫成這幾個字,前面不能加-或者–,不能小寫
2. 設置環境變量,使當前系統的perl程序能夠自動找到安裝的模塊
vim ~/.bashprofile 添加
export PATH=/home/zilhua/software/perl-5.18.0/lib
保存並關閉.bash_profile文件
按照上面的方法更新路徑
注意:一般手動安裝的模塊最後還需要自己重新改一下名字的。
方法3:使用模塊 local::lib(不推薦)
先手動安裝這個模塊,然後再用這個模塊安裝其他模塊。
http://search.cpan.org/~haarg/local-lib-2.000004/lib/local/lib.pm
以下是詳細步驟:
tar -xzf local-lib-2.000004.tar.gz
cd local-lib-2.000004.tar.gz
下一步,將local::lib加入至bootstrap當中去。這一步會在用戶HOME目錄下新建一個perl5的目錄,並且指定它爲將來安裝perl模塊的目錄。
perl Makefile.PL –bootstrap
而後安裝local::lib
make
make test
make install
而後試運行一下perl
perl -MCPAN -e shell
一路選擇默認值,然後退出。這一步,perl會將本地的模塊搜索目錄放入至.bashrc文件尾部。
安裝其它perl模塊
這個時候我們就可以進行非root權限的perl模塊安裝了。我們首先需要從先前的terminal窗口中退出來,重開一個terminal窗口,這樣就會過一遍.bashrc文件。試着安裝一個模塊,
perl -MCPAN -eshell
nolock_cpan[1]> install File::ReadBackwards
一切OK。
爲cluster擴展library path
可以簡單的在qsub文件中運行perl之前加入PERL5LIB的搜索路徑
echo $PERL5LIB
然後將傳回的值寫入qsub當中去
PERL5LIB=/home/path/lib:/usr/another/path/lib; export PERL5LIB
也可在執行命令中加入-I參數
perl -I /home/path/lib -I /usr/another/lib script.pl
或者在pl文件頭裏加入lib的路徑
!/usr/bin/perl
use lib “/home/path/lib”;
use lib “/usr/another/lib”;
use MyCustomModule;