- ベストアンサー
Perlでモジュールをインストールしない方法
Perlでモジュールをインストールしない方法をしりたいです。 普通はコマンドを使ったりして必要なモジュールを予めインストールしますが、インストールせずにCPANサイトからモジュールをダウンロードしてきて使用する方法はありますか? 自分の感覚だと、プログラムの最初に何かを宣言すればいいのかな、と思うのですが。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
root権限はないが、シェルを使えるということであれば、No1の方が示した手法がよいと思います。 > インストールせずにCPANサイトからモジュールをダウンロードしてきて使用する方法はありますか? とのことですので、この手法を説明します。 その前に、Perlの@INCという特殊変数(配列)はご存知でしょうか? @INCにはライブラリ(モジュール)が保管されているパスが入っています。 ですので、@INCにご自分が使いたいモジュールを置いたパスを追加してやれば、任意のモジュールが使えることになります。 その具体的な手法は過去のQ&Aで回答していますので、そちらをご覧ください。 http://okwave.jp/qa/q6029558.html なお、上記リンク先の BEGIN は、ご利用になるあるいはご自分で作成したPerlスクリプトの一番上でも一番下でもどこに挿入してもOKです。 ※BEGINブロックは、そのPerlスクリプトが読み込まれた際に一番最初に実行される部分です。
その他の回答 (1)
- Gaffgarion
- ベストアンサー率45% (45/99)
jqueryなどのCDNのように、都度ダウンロードってことですかね? 無理でしょう、そのやり方もやりたいというニーズも聞いたこともないです。 rootが使えない、他に影響を及ぼしたくない、などの理由であれば、 ユーザディレクトリを指定してインストールすることで解決できます。 cpanminusとかで検索すると事例が出てくるでしょう。
お礼
ありがとうございます! 早速調べてみます。
お礼
ありがとうございます!実際にやってみました、が Can't locate Mail/Header.pm in @INC (@INC contains: ./modular C:/Perl64/site/lib C:/Perl64/lib .) at modular/MIME/Head.pm line 120. BEGIN failed--compilation aborted at modular/MIME/Head.pm line 120. Compilation failed in require at modular/MIME/Parser.pm line 141. BEGIN failed--compilation aborted at modular/MIME/Parser.pm line 141. Compilation failed in require at ./00_buhin/sub_mail_jyushin.pl line 18. BEGIN failed--compilation aborted at ./00_buhin/sub_mail_jyushin.pl line 18. Compilation failed in require at mail_check.pl line 19. というエラーが出ました。でもなんとなく道筋は見えた気がします。ありがとうございました。