トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン

技術的雑談-AutoLoaderを使用しているperl moduleを手動でInstallする

技術的雑談-AutoLoaderを使用しているperl moduleを手動でInstallする


 環境

  • とりあえずperl5系が動けばOKだと思う。
  • 確認はCentOS4.3環境

 現象

  • perl module(.pm)を手動でInstallしたとき、以下のようなError messageが出る。

Can't locate auto/xxxx/xxxxx/xxxxxxx in @INC (@INC contains:〜
(先頭に「auto」が付いているのがポイント)

 原因

perl moduleの中には「AutoLoader」というperl moduleを使い、moduleの必要な部分を必要になった時にロードするものがある。
perl moduleの手動Installを行うと、AutoLoader用のファイル分割がされないままになっている事があり、AutoLoaderでエラーになる。

 対処

サーバにログインし、以下のコマンドを実行する。

perl -e 'use AutoSplit; autosplit($ARGV[0], $ARGV[1], 0, 1, 1)' xxxxxxx.pm yyyy/zzzz/auto

xxxxxxx.pm
AutoLoaderで分割する元のperl module
yyyy/zzzz/auto
分割されたファイルを配置するディレクトリ。最後は「/auto」で終わる事。

 履歴

2006/10/24 -- 初版

技術的雑談へ戻る

 突っ込み

  • 参考にさせて頂きました。Can't find 'package Name;' in ファイル名.pmとなり、ハマっていたのですが、まさかパッケージ名を付けていない事が原因だったとは・・w auto/以下に出来るファイルは、通常通り(useで呼ぶためにlib/をパスに通せばよいのですかね・・?)呼べば良いのでしょうか。ちょっとやってみます - たった (2010年03月25日 15時17分29秒)

name   comment  
URL (入力するとす ぱ むとみなします!)


技術的雑談へ戻る

TrackBack

TrackBack URL for this entry:
http://www.himajin2001.com/fswiki/tb.cgi/%B5%BB%BD%D1%C5%AA%BB%A8%C3%CC%2DAutoLoader%A4%F2%BB%C8%CD%D1%A4%B7%A4%C6%A4%A4%A4%EBperl+module%A4%F2%BC%EA%C6%B0%A4%C7Install%A4%B9%A4%EB

技術的雑談へ戻る

最終更新日時:最終更新時間:2010年03月25日 15時17分29秒
トップページに戻る