LoginSignup
1

More than 5 years have passed since last update.

Movable Typeで「Can't locate parent.pm in...」というエラーを解決する

Posted at

28b83e6e9ea0679d5b797fbace9fa79c.jpg

Movable Typeで、バージョンアップをしたときや、新しいプラグインを追加したときに「Can't locate parent.pm in @INC...」というエラーが表示され、動作しなくなることがあります。

これは、Movable Typeコアもしくは追加したプラグインで利用する前提となっているPerlモジュール、「parent.pm」が利用中のサーバーに設置されていないことにより発生するものです。

Can't locate parent.pm in @INC (@INC contains: /home/path/to/movabletype/mt/plugins/mixiComment/lib
/home/path/to/movabletype/mt/plugins/spamlookup/lib
/home/path/to/movabletype/mt/plugins/WidgetManager/lib
/home/path/to/movabletype/mt/plugins/SmartphoneOption/lib
・・・

Perlの設定が可能なサーバーの場合

CPAN等のモジュール管理ツールで、parentモジュールを追加してください。

レンタルサーバー等、設定できないサーバーの場合

parentモジュールを入手する

26e1858f3cdf24dc2c9db5624426da82.jpg

CPANのウェブサイトにアクセスし、ページ中央のフォームに「parent」と入力して、モジュールを検索してください。

http://search.cpan.org/

9c2a1aa2625a2a6a35cacf43bf1e0933.jpg

検索結果に「parent」モジュールがあるので、詳細ページへ移動し、「source」リンクを右クリックして、リンク先のファイルを保存してください。保存ファイル名は「parent.pm」にします。

Movable Typeにモジュールを追加する

「parent.pm」ファイルを、以下のいずれかのディレクトリにアップロードしてください。
Movable Typeのメンテナンスを自分が行わないなどの理由で、コアファイルが上書きされてしまうのを避けたい場合は、プラグイン内に追加する方が安全です。ディレクトリがなければ作成してください。

Movable Typeを設置したディレクトリ/extlib
Movable Typeを設置したディレクトリ/plugins/エラーが発生したプラグイン/extlib

参照元

もう少し詳しい話は、荒木さんの解説を参照ください。

Perlで「Can't locate parent.pm」が発生する場合の対処: 小粋空間

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1