Perl初心者です。
モジュールを利用する際に、拡張子「pl」とは違い、そのままフォルダに置いておくだけではなく、インストールしなければ使えないということがわかりました。
そこで、疑問なのですが、レンタルサーバーなど、自分で権限を持たない場合はみなさんはどうなさっているのでしょうか?
大変初歩的な質問ですいません。
よろしくお願いします。
そのままフォルダに置くだけでいい。
たとえば HTML::Template モジュールを使用する場合、
./test.cgi
./HTML/Template.pm
と言うように :: をディレクトリに置き換えた形で配置すれば問題ない。
ただ、この形だと全ての CGI の相対パスになるので複数の CGI でまとめたい場合は、適当にモジュール用のディレクトリを決めておき、
public_html/test.cgi
perl_lib/HTML/Template.pm
と配置したとすると、test.cgi の前のほうに、
use lib '../perl_lib';
と言うようにライブラリの検索パスを追加すればよい。
perlだけで書かれたモジュールは適当なディレクトリ(フォルダ)に置くだけで使えます。
CPANなどからダウンロードしてきて、適当なディレクトリにおいてください。
また標準モジュール(CGI.pmなど)は最初からサーバにインストールされていることが多いので、何もしなくても使えます。
ありがとうございます。
まだまだ、自分の勉強不足が身にしみます。
参考になりました!
ありがとうございます、引き続き勉強していきたいと思います。
参考になりました!
Perl のみで書かれている大抵のモジュールは、~.pm ファイルを置くだけで使えます。
中には置くだけで使えないモジュールもありますが、その場合は PP (Pure Perl) 版が用意されていれば、それで代用できます。(例: DBD::Pg の替わりに DBD::PgPP で代用)
置くだけで使えなく、対応する PP 版も無い場合は、シェルログインしてインストール作業を行う必要があります。
さくらインターネットでCPANを利用する等を参考にしてください。
さくらインターネットのようにシェルログインが許されていれば上記のような対応が取り得ますが、そうでないレンタルサーバだとお手上げです。
解答ありがとうございます。
そうなると、モジュールを利用できるレンタルサーバーは限られてきますね。
ありがとうございます。
ありがとうございます!
では、通常、PLとかを利用するのと大差ないと考えていいんですね。
大変、初歩的な質問ですいません。ありがとうございました!