レンタルサーバー・自宅サーバー設定・構築のヒント
レンタルサーバー・自宅サーバー設定・構築のヒント - レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。

CPANを使って Movable Typeに必要な perl パッケージ(モジュール)をインストールする

2011年1月6日 2015年5月17日
perl howto

今回は、perlです。
perlについては、このサイトでは、ほとんど触れることなくここまで来ました。
それは、ほとんど意識することなく、perlはインストールされていますし、特別に使いたい場面があれば別ですが、ここまでそのような場面に遭遇しなかっただけです。

CentOSの場合、perlのインストール自体は、yumを使えば簡単に行えますので、ここでは、説明を割愛します。

ここでは、CPANを使ってperlのモジュール(拡張機能)をインストールしてみます。

CPAN(シーパン)とは、
Comprehensive Perl Archive Networkの略で、直訳すれば、「広域Perlアーカイブネットワーク」?なんか訳していないような・・・。
要は、Perlのライブラリ・モジュールやその他のPerlで書かれたソフトウェアを集めた巨大なアーカイブ(書庫)のことを言います。

しかし、一般的には、CPANと言うとCPANシェルのことを言うことが多いです。

CPANシェルは、
CPANの管理ツールで、CPANシェルを用いることで、CPANに登録されているPerlモジュールを簡単にインストールすることができます。

CPANを使って Movable Typeに必要な perl パッケージ(モジュール)をインストールする

早速、CPANシェルを使ってMovable Typeに必要な perlパッケージ(モジュール)をインストールしてみましょう。

CPANシェルを起動する。

CPANシェルは、最初の起動時に環境設定が必要となります。

最新のバージョンでは、自動化がすすんでいて、最初の質問にyesで回答すると後は全部自動手的にデフォルトの設定で、自動処理されます。

ここでは、基本を重視していますので、CPANシェルを起動する方法として
$ perl -MCPAN -e shell<img src="/images/return.png" alt="return" title="return" />
を使います。
ただ、通常は、
$ cpan<img src="/images/return.png" alt="return" title="return" />
のみでCPANシェルは起動できます。通常は、こちらを使います。
$ perl -MCPAN -e shellreturn


CPAN is the world-wide archive of perl resources. It consists of about
300 sites that all replicate the same contents around the globe. Many
countries have at least one CPAN site already. The resources found on
CPAN are easily accessible with the CPAN.pm module. If you want to use
CPAN.pm, lots of things have to be configured. Fortunately, most of
them can be determined automatically. If you prefer the automatic
configuration, answer 'yes' below.

If you prefer to enter a dialog instead, you can answer 'no' to this
question and I'll let you configure in small steps one thing after the
other. (Note: you can revisit this dialog anytime later by typing 'o
conf init' at the cpan prompt.)
Would you like me to configure as much as possible automatically? [yes]return
...
perl を実行した際に、以下のようなエラーが出力された場合は、CPAN が単純にインストールされていない可能性大です。
$ perl -MCPAN -e shellreturn
Can't locate CPAN.pm in @INC (@INC contains: /usr/local/lib/perl5 /usr/local/share/perl5 /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5 /usr/share/perl5 .).
BEGIN failed--compilation aborted.
以下のようにインストールすれば、OKでしょう。

CentOS Scientific Linux

$ yum install perl-CPAN make 
...

Debian Ubuntu は、perlパッケージに含まれています。

$ aptitude install perl make 
...
makeパッケージは、インストールしておきましょう。makeは必須です。 ( cpan を利用するなら、make,gcc,g++,unzip,wget,ftp,curl は必須です。)

古いバージョンでは、自動化がすすんでいないので、以下のようにそれぞれの確認事項に回答する必要があります。

$ perl -MCPAN -e shellreturn
CPAN is the world-wide archive of perl resources. It consists of about
100 sites that all replicate the same contents all around the globe.
Many countries have at least one CPAN site already. The resources
found on CPAN are easily accessible with the CPAN.pm module. If you
want to use CPAN.pm, you have to configure it properly.

If you do not want to enter a dialog now, you can answer 'no' to this
question and I'll try to autoconfigure. (Note: you can revisit this
dialog anytime later by typing 'o conf init' at the cpan prompt.)

Are you ready for manual configuration? [yes]return


The following questions are intended to help you with the
configuration. The CPAN module needs a directory of its own to cache
important index files and maybe keep a temporary mirror of CPAN files.
This may be a site-wide directory or a personal directory.



First of all, I'd like to create this directory. Where?

CPAN build and cache directory? [/root/.cpan]return


If you want, I can keep the source files after a build in the cpan
home directory. If you choose so then future builds will take the
files from there. If you don't want to keep them, answer 0 to the
next question.



How big should the disk cache be for keeping the build directories
with all the intermediate files?

Cache size for build directory (in MB)? [10]return


By default, each time the CPAN module is started, cache scanning
is performed to keep the cache size in sync. To prevent from this,
disable the cache scanning with 'never'.

Perform cache scanning (atstart or never)? [atstart]return


To considerably speed up the initial CPAN shell startup, it is
possible to use Storable to create a cache of metadata. If Storable
is not available, the normal index mechanism will be used.

Cache metadata (yes/no)? [yes]return


The next option deals with the charset your terminal supports. In
general CPAN is English speaking territory, thus the charset does not
matter much, but some of the aliens out there who upload their
software to CPAN bear names that are outside the ASCII range. If your
terminal supports UTF-8, you say no to the next question, if it
supports ISO-8859-1 (also known as LATIN1) then you say yes, and if it
supports neither nor, your answer does not matter, you will not be
able to read the names of some authors anyway. If you answer no, names
will be output in UTF-8.

Your terminal expects ISO-8859-1 (yes/no)? [yes]return


If you have one of the readline packages (Term::ReadLine::Perl,
Term::ReadLine::Gnu, possibly others) installed, the interactive CPAN
shell will have history support. The next two questions deal with the
filename of the history file and with its size. If you do not want to
set this variable, please hit SPACE RETURN to the following question.

File to save your history? [/root/.cpan/histfile]return
Number of lines to save? [100]return


The CPAN module can detect when a module that which you are trying to
build depends on prerequisites. If this happens, it can build the
prerequisites for you automatically ('follow'), ask you for
confirmation ('ask'), or just ignore them ('ignore'). Please set your
policy to one of the three values.

Policy on building prerequisites (follow, ask or ignore)? [ask]return


The CPAN module will need a few external programs to work properly.
Please correct me, if I guess the wrong path for a program. Don't
panic if you do not have some of them, just press ENTER for those. To
disable the use of a download program, you can type a space followed
by ENTER.

Where is your gzip program? [/bin/gzip]return
Where is your tar program? [/bin/tar]return
Where is your unzip program? [/usr/bin/unzip]return
Where is your make program? [/usr/bin/make]return
Warning: links not found in PATH
Where is your links program? []return
Where is your wget program? [/usr/bin/wget]return
Warning: ncftpget not found in PATH
Where is your ncftpget program? []return
Warning: ncftp not found in PATH
Where is your ncftp program? []return
Where is your ftp program? [/usr/kerberos/bin/ftp]return
Where is your gpg program? [/usr/bin/gpg]return
What is your favorite pager program? [/usr/bin/less]return
What is your favorite shell? [/bin/bash]return


Every Makefile.PL is run by perl in a separate process. Likewise we
run 'make' and 'make install' in processes. If you have any
parameters (e.g. PREFIX, LIB, UNINST or the like) you want to pass
to the calls, please specify them here.

If you don't understand this question, just press ENTER.

Parameters for the 'perl Makefile.PL' command?
Typical frequently used settings:

    PREFIX=~/perl       non-root users (please see manual for more hints)

Your choice:  []return
Parameters for the 'make' command?
Typical frequently used setting:

    -j3              dual processor system

Your choice:  []return
Parameters for the 'make install' command?
Typical frequently used setting:

    UNINST=1         to always uninstall potentially conflicting files

Your choice:  [] UNINST=1return


Sometimes you may wish to leave the processes run by CPAN alone
without caring about them. As sometimes the Makefile.PL contains
question you're expected to answer, you can set a timer that will
kill a 'perl Makefile.PL' process after the specified time in seconds.

If you set this value to 0, these processes will wait forever. This is
the default and recommended setting.

Timeout for inactivity during Makefile.PL? [0]return


If you're accessing the net via proxies, you can specify them in the
CPAN configuration or via environment variables. The variable in
the $CPAN::Config takes precedence.

Your ftp_proxy?
Your http_proxy?
Your no_proxy?
You have no /root/.cpan/sources/MIRRORED.BY
  I'm trying to fetch one
LWP not available
CPAN: Net::FTP loaded ok
Fetching with Net::FTP:
  ftp://ftp.perl.org/pub/CPAN/MIRRORED.BY


Now we need to know where your favorite CPAN sites are located. Push
a few sites onto the array (just in case the first on the array won't
work). If you are mirroring CPAN to your local workstation, specify a
file: URL.

First, pick a nearby continent and country (you can pick several of
each, separated by spaces, or none if you just want to keep your
existing selections). Then, you will be presented with a list of URLs
of CPAN mirrors in the countries you selected, along with previously
selected URLs. Select some of those URLs, or just keep the old list.
Finally, you will be prompted for any extra URLs -- file:, ftp:, or
http: -- that host a CPAN mirror.

( 1 ) Africa
( 2 ) Asia
( 3 ) Australasia
( 4 ) Central America
( 5 ) Europe
( 6 ) North America
( 7 ) Oceania
( 8 ) South America
Select your continent (or several nearby continents) [] 2return
Sorry! since you don't have any existing picks, you must make a
geographic selection.

( 1 ) China
( 2 ) Hong Kong
( 3 ) India
( 4 ) Indonesia
( 5 ) Japan
( 6 ) Republic of Korea
( 7 ) Russia
( 8 ) Singapore
( 9 ) Taiwan
( 10 ) Thailand
( 11 ) Turkey
Select your country (or several nearby countries) [] 5return
Sorry! since you don't have any existing picks, you must make a
geographic selection.

( 1 ) ftp://ftp.dti.ad.jp/pub/lang/CPAN/
( 2 ) ftp://ftp.jaist.ac.jp/pub/CPAN/
( 3 ) ftp://ftp.kddilabs.jp/CPAN/
( 4 ) ftp://ftp.nara.wide.ad.jp/pub/CPAN/
( 5 ) ftp://ftp.riken.jp/lang/CPAN/
( 6 ) ftp://ftp.ring.gr.jp/pub/lang/perl/CPAN/
( 7 ) ftp://ftp.u-aizu.ac.jp/pub/CPAN
( 8 ) ftp://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/
Select as many URLs as you like (by number),
put them on one line, separated by blanks, e.g. '1 4 5' [] 5 3 1return

Enter another URL or RETURN to quit: []return
New set of picks:
  ftp://ftp.riken.jp/lang/CPAN/
  ftp://ftp.kddilabs.jp/CPAN/
  ftp://ftp.dti.ad.jp/pub/lang/CPAN/


commit: wrote /usr/lib/perl5/5.8.8/CPAN/Config.pm
Terminal does not support AddHistory.

cpan shell -- CPAN exploration and modules installation (v1.7602)
ReadLine support available (try 'install Bundle::CPAN')

cpan>
自分の環境では、のところだけ、入力しました。
※環境によっては、他の設定も設定する必要があるかもしれません。

UNINST=1 : 古い同名のモジュールが既に存在した場合、古いものを削除し、新しいものをインストールします。
上記以外の設定は、地域、国、サーバーを設定しているだけです。
サーバーは、複数選択することができるので、ここでは、3つ選択してみました。

CPANシェルを使ってSQLiteをインストールしてみる。

上記でCPANシェルが起動できれば、cpan>のプロンプトが表示されます。
Perlモジュールをインストールする場合は、そのプロンプトから

install モジュール名

と入力すればOKです。ただ、モジュールによっては、他のモジュールに依存していて、うまくインストールできない場合があります。

例えば、SQLiteやmysqlなどデータベース関連は、その一つです。

データベース関連モジュールをインストールする場合は、DBIモジュールを先にインストールする必要があります。

cpan> install DBI
CPAN: Storable loaded ok
LWP not available
           :
           :
Shall I follow them and prepend them to the queue
of modules we are processing right now? [yes]
           :
           :

Appending installation info to /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/perllocal.pod
  /usr/bin/make install UNINST=1 -- OK

cpan> install DBD::SQLite
CPAN: Storable loaded ok
LWP not available
           :
  /usr/bin/make install UNINST=1 -- OK

cpan> 

とこんな感じでPerlモジュールのDBD::SQLiteをインストールすることができます。
※問い合わせは、そのままyesでOK。


CPANシェルを使ってMovable Typeに必要なパッケージをインストールしてみる。

perl のCMSといえば、Movable Typeですね。
ここでは、Movable Typeに必要なperl パッケージをインストールしてみます。


必須パッケージとして、以下のものがあげられています。

cpan> install CGI
cpan> install Image::Size
# バージョン0.8以上
cpan> install File::Spec
cpan> install CGI::Cookie
# バージョン1.21以上
cpan> install DBI
# MySQLを利用する場合のみ必要です。
# 以下のパッケージをインストールする前に、mysql,mysql-develのインストールが必要です。
cpan> install DBD::mysql

一応、公開情報として、以下のものもインストールすると更に拡張機能をスムーズに利用できるとされています。

cpan> install HTML::Entities
cpan> install LWP::UserAgent
cpan> install SOAP::Lite (バージョン0.5以上)
cpan> install File::Temp
cpan> install Image::Magick ( または GD, NetPBM, Imager のいずれか)
cpan> install Storable
cpan> install Crypt::DSA
cpan> install MIME::Base64
cpan> install XML::Atom
cpan> install Archive::Tar
cpan> install Archive::Zip
cpan> install IO::Compress::Gzip
cpan> install IO::Uncompress::Gunzip
cpan> install Text::Balanced (ブログ内検索で必要)

個人的には、上記をまるまる全部インストールするとそれなりに時間とディスク容量が必要になるので、 デフォルトでは、以下のパッケージに限定してインストールしています。

cpan> install HTML::Entities
cpan> install XML::Parser
cpan> install XML::Atom
cpan> install Archive::Tar
cpan> install Mail::Sendmail
# GDをインストールするには、gd-develが既にインストールされている必要があります。
cpan> install GD
GDをインストールしたときに以下のようなエラーが発生することがあります。
**UNRECOVERABLE ERROR**
Could not find gdlib-config in the search path. Please install libgd 2.0.28 or higher.
If you want to try to compile anyway, please rerun this script with the option --ignore_missing_gd.
このエラーは、libgdがインストールされていないだけなので、 他のシェルから、yumを使ってインストールすればOKです。

CentOS Scientific Linux

$ yum install gd-devel

Debian Ubuntu は、perlパッケージに含まれています。

$ aptitude install libgd-gd2-perl
また、エラーが発生した場合は、
cpan> clean GD
のようにcleanコマンドを使って、エラー発生したインストール情報を削除しましょう。
その後、installコマンドで再度インストールしましょう。

ざっとこんな感じです。

最初のCPANシェルの設定だけ、ちょっと英語の苦手は自分は、びっくりしましたが、後は、やってみるとそれほど難しくはありません。

これで、Movable Typeのオープンソース版は、使えそうです。
ご利用のブラウザは、広告ブロック(AdBlockなど) が適用となっていませんか?
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない検索ができないことがあります。


関連記事 :

Debian(Ubuntu) で PerlモジュールをインストールしたいときはCPANを使わなくても良い

Debian(Ubuntu) では、Perlモジュールをインストールしたいとき、CPANを使わなくても apt ( apt-get , apti ...

Ubuntu (Debian) で nginx に perl module (モジュール) を組み込んで使ってみる

今回は、Ubuntu Server(Debian) で nginx の perl module (モジュール) を使ってみたいと思います。 ...

Nginx にリバースプロキシのキャッシュ削除モジュール nginx cache purge を組み込んで使ってみる(Debian/Ubuntu編)

今回は、Ubuntu Server(Debian) で nginx を使ってみたいと思います。 Ubuntu(Debian) では、apt ...

makeでインストールしたものをrpmパッケージに作成できる checkinstall をインストールする

今回は、非常に便利なrpmパッケージを作成してくれるcheckinstall をインストールしてみます。 FreeBSDやLinuxなどの ...

Ubuntu (Debian) で nginx に WebDAV拡張モジュール(ngx-dav-ext-module)を組み込むで使ってみる

今回は、Ubuntu Server(Debian) で nginx を使った WebDAV を構築してみたいと思います。 ( Apache 版 ...



コメントを投稿 :

お名前 *

メールアドレス *
( メールアドレスが公開されることはありません。)

サイトアドレス

コメント *

* 印の項目は、入力が必要な項目です。




最近投稿の記事

[ 画像提供元 : Amazon ] 先日、1TBのディスクの入れ替え時にバックアップをとろうとディスクコピーを行いました。 その際 ...

Windows で Linux ファイルシステム Ext4 のディスクをマウントするには? Ext3Fsd が、おそらく、最も簡単なツール ...

今回は、Windows で Compass を使ってみました。 Compass とは、 Sass(サス、Syntactica ...

今回は、Anti Adblock を使ってみました。 Anti Adblock とは、 そもそも Adblock という ウェブ ...

デスクトップ環境でない サーバーで、Webページのキャプチャー画像をコマンドで撮る には、wkhtmltoimage, CutyCapt ...


さくらのVPS 全プラン リニューアルです。(石狩(北海道)も選択可)


root権限ありで ¥685 / 月 ~ と非常にリーズナブルな CPU 1(core)の 512 プランから、 最高 CPU 10(core), メモリ 32(GB), SSD容量 800(GB) までとプランが充実。
ディスクは、SSDとHDDの選択が可能になった他、データセンターは人気の東京、石狩(北海道)となりました。

また、どのプランでも好きなOSが選べます
( CentOS, Fedora, Scientific Linux, FreeBSD, Ubutu, Debian )

管理人もおすすめのVPSです。
試用期間がありますから、一度、お試しを!!

詳しくは、http://vps.sakura.ad.jp/さくらのVPSのサイトへ へどうぞ!!

カテゴリ


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。
最近、スワップにも対応した Serverman@VPS は、かなりリーズナブルかもです。

  • メモリ1GB~2GBのEntryプラン :月額:490円
  • メモリ2MB~4GBのStandardプラン :月額:980円
  • メモリ4GB~8GBのProプラン :月額:1,980円

新規申し込みで1ヶ月間完全無料となるキャンペーンを実施中です。
Serverman@VPSの特徴は、安さとIPv6対応です。また、初期設定費0円もポイントです。

IPv6でちょっと遊んでみたい方には、おすすめかもしれませんね。最低利用期間もありませんから、気に入らないときは即解約もできます。

Serverman@VPSの詳細については、 http://dream.jp/vps/ Serverman@VPSのサイトへへどうぞ。



KVM採用 ConoHa VPSは、時間単位で借りれる便利なVPSです。


ConoHa VPS は、初期設定費0円最低利用期間無し時間単位で清算可能、 さらに、Web APIを使って自動化を図ることもできる便利なVPSです。

海外サーバー設置も可能で、ローカル接続にも対応と、かなり、機能豊富なサーバーです。

新規ユーザ登録で、クーポンもらえますから、まずは、お試しですね。

ConoHa VPSの詳細については、
http://www.conoha.jp/ へどうぞ。

KVM採用 お名前.com VPS(KVM) 2G プラン 初期設定費無料 キャンペーン 実施です。


メモリ2GBプラン CPU:3core、Disk:200GB
月額:1,153円から (初期設定:1,680円0円)

さくらのVPSがリニューアルされてもなんのその。
1GBメモリ / 2Core を ¥834 – の格安価格で提供中です!
間違いなくスペックからすると割安感ありです。
年間割引時の途中解約で返金がないのは、 ちょっと残念ですが、それでもこの割安感は魅力です。

まずは、お試しですね。

お名前.com VPS(KVM)の詳細については、
http://www.onamae-server.com/vps/ へどうぞ。(お試し期間が15日あります。)



  • ソーシャルブックマーク

  • はてなブックマークへ追加するはてな登録数
ページトップへ
Time : 0.2664 [s]