[perlメモ]モジュールをローカル(ユーザー領域)にインストールする

サーバーの管理者権限がない場合やユーザー領域でcpanを使う方法もできない時、ローカルにモジュールをインストールして利用する方法のメモ。

ここでは参考として、Error.pmをさくらインターネットのスタンダードプランのレンタルサーバーのローカル(ユーザー領域)にインストールしてみる。

1.下のCPANのサイトからErrorのダウンロードURLを調べておく、

Browse and search CPAN : Error
XG001339b

2.サーバーにsshで接続、ログインして作業します。

3.色々フォルダを作成する。

サーバーにsshでログインしたらディレクトリを作成しておく

上から、パッケージをインストールするディレクトリ、BSDPANのエラー回避で利用するディレクトリ、tarボール(ソース)をダウンロードやコンパイルする用ディレクトリ

%cd
%mkdir -p ~/local
%mkdir -p ~/local/var/db/pkg
%mkdir -P ~/src
%

4.前準備として色々やります。

ここではシェルをcshを使っている事を前提として説明します。

下記のコマンドを実行してcシェルの設定ファイルをviエディタで開きます。エディタはなんでもいいです。使い方が分からない場合はググるよろし。

%vi ~/.cshrc

 

viが起動したら下記の設定を追記します。

上の5行は、FreeBSDのBSDPANのエラーを回避する為の設定、必須というわけではないようです。(設定しないとモジュールのインストール時にエラーが表示されますが)

下の2行は、モジュール参照用のパスの設定です。ローカルにインストールしたモジュールをperlのプログラムが認識できるようにする為の物です。

cgiから利用する場合は別途use libなどしてモジュールのパスを指定する必要があります。

 

setenv PKG_DBDIR $HOME/local/var/db/pkg
setenv PORT_DBDIR $HOME/local/var/db/pkg
setenv INSTALL_AS_USER
setenv LD_LIBRARY_PATH $HOME/local/lib

setenv PATH $HOME/local/bin:$PATH
setenv PERL5LIB $HOME/local/lib/perl5:$HOME/local/lib/perl5/site_perl:$HOME/loca
l/lib/perl5/site_perl/5.8.9/mach

 

編集が完了したら以下のコマンドで設定を反映します。

%source ~/.cshrc
%

5.ソースをダウンロードしてインストール
以下の手順でソースのダウンロード、コンパイル、インストールまで行います。

%cd ~/src
%wget http://cpan.uwinnipeg.ca/cpan/authors/id/S/SH/SHLOMIF/Error-0.17015.tar.gz
%tar -zxvf Error-0.17015.tar.gz
%cd Error-0.17015
%perl Makefile.PL PREFIX=~/local
%make
%make test
%make install

 

cgiなどから参照する場合は下の様にuse libしてあげるといいです。

use strict;
use warnings;
use lib qw(  /home/hogehoge/local/lib/perl5/site_perl/5.8.9 /home/hogehoge/local/lib/perl5/site_perl/5.8.9/mach );

 

◇参考:otsune’s FreeBSD memo :: ユーザー領域にCPANをインストールする方法
◇参考:モジュールをインストールしよう
◇参考:CPANモジュールをローカル環境にインストールしてMovable Typeで使用する方法を

タグ : ,