PERLをインストールする
まずは、PERLがインストールされているか確認して、インストールされていないようなら、インストールします。
$ dpkg -l|grep -e "\s\{2,\}perl"
ii perl 5.10.1-17squeeze3 Larry Wall’s Practical Extraction and Report Language
ii perl-base 5.10.1-17squeeze3 minimal Perl system
ii perl-modules 5.10.1-17squeeze3 Core Perl modules
|
上記の検索で何も出力されないか、先頭文字列がc となっている場合は、削除されているので、インストールしましょう。
$ aptitude install perl
...
|
Movable Typeに必要なパッケージをaptitudeを使ってインストールする
Movable Typeに必要なパッケージをaptitudeを使ってインストールしてみます。
インストールするPerlモジュールは以下のとおりです。
必須Perlモジュール
- CGI
- Image::Size
- File::Spec
- CGI::Cookie
- DBI
- DBD::mysql
推奨Perlモジュール
- HTML::Entities
- LWP::UserAgent
- SOAP::Lite (バージョン0.5以上)
- File::Temp
- Image::Magick ( または GD, NetPBM, Imager のいずれか)
- Storable
- Crypt::DSA
- MIME::Base64
- XML::Atom
- Archive::Tar
- Archive::Zip
- IO::Compress::Gzip
- IO::Uncompress::Gunzip
- Text::Balanced (ブログ内検索で必要)
Debian(Ubuntu)で Perlモジュールをaptitudeでインストールする場合、パッケージ名を調べるところからはじめます。
Perlモジュールのパッケージ一覧は、以下のコマンドで一覧出力することができます。
$ aptitude search ^lib.*-perl
p libace-perl - Object-Oriented Access to ACEDB Databases
...
|
ここで出力される先頭文字は、パッケージの状態を表します。
1文字目
p:システムにパッケージが存在した形跡がないという意味
c:パッケージが削除されたがシステムに設定ファイルが残っているという意味
i:パッケージがインストールされているという意味
v:パッケージが仮想パッケージであるという意味
2文字目
i:最もありふれた状態は、パッケージがインストール予定であるという意味
d:パッケージが削除予定であるという意味
p:パッケージおよびその設定ファイルが削除予定であるという意味
3文字目
A:パッケージは自動的にインストールされたもの
パッケージ名称は、
libxxxxxx-perl : xxxxxxがPerlモジュール名に相当します。
例えば、CGIモジュールであれば以下のように検索すればヒットします。
$ aptitude search ^lib.*-perl | grep libcgi- | grep -e "/base/i"
p libcgi-ajax-perl - Perl-specific system for writing Asynchron
p libcgi-application-basic-plugin - Basic Plugins for CGI::Application
p libcgi-application-extra-plugin - Extra Plugins for CGI::Application
p libcgi-application-perl - framework for building reusable web-applic
p libcgi-application-plugins-perl - Dummy transition package for CGI::Applicat
p libcgi-application-server-perl - simple HTTP server for developing with CGI
p libcgi-cookie-splitter-perl - Split big cookies into smaller ones
p libcgi-extratags-perl - Useful Extensions for the CGI Module
p libcgi-fast-perl - CGI::Fast Perl module
p libcgi-formalware-perl - Perl module for converting an XML file int
p libcgi-formbuilder-perl - Easily generate and process stateful CGI f
p libcgi-formbuilder-source-yaml- - Initialize FormBuilder application from YA
v libcgi-kwiki-perl -
p libcgi-pm-perl - module for Common Gateway Interface applic
p libcgi-session-expiresessions-p - delete expired CGI::Session db-based and f
p libcgi-session-perl - persistent session data in CGI application
p libcgi-session-serialize-yaml-p - YAML and YAML::Syck support for CGI::Sessi
p libcgi-simple-perl - simple totally OO CGI interface that is CG
p libcgi-ssi-parser-perl - used in CGI scripts for parsing SSI direct
p libcgi-ssi-perl - Perl module to use SSI from CGI scripts
p libcgi-untaint-date-perl - CGI::Untaint::date - validate a date
p libcgi-untaint-email-perl - Input handler for CGI::Untaint to validate
p libcgi-untaint-perl - Process CGI input parameters
p libcgi-uploader-perl - module for managing CGI uploads using an S
p libcgi-validop-perl - module for validating CGI parameters
p libcgi-xml-perl - perl module for converting CGI variables f
p libcgi-xmlapplication-perl - XML-DOM と OO ベースの CGI スクリプト作成
p libcgi-xmlform-perl - perl module for reading/generating formatt
|
ここには、
libcgi-perl
libcgi-Cookie
もありません。
ここにない場合は、ほとんどperl-modulesで既にインストールされている場合が多いです。
http://packages.debian.org/ja/squeeze/all/perl-modules/filelist で .pmファイルを確認すると良いでしょう。
...
/usr/share/perl/5.10.1/CGI.pm
/usr/share/perl/5.10.1/CGI/Apache.pm
/usr/share/perl/5.10.1/CGI/Carp.pm
/usr/share/perl/5.10.1/CGI/Cookie.pm
/usr/share/perl/5.10.1/CGI/Pretty.pm
...
|
と、先のdebainパッケージのページの一覧にありますね。perl-modulesで既にインストール済みです。
このように調べていくと、以下のような結果になります。
必須Perlモジュール
CGI – 不要(perl-modulesでインストール済)
- Image::Size – libimage-size-perl
- File::Spec – libfile-spec-perl
CGI::Cookie – 不要(perl-modulesでインストール済)
- DBI – libdbi-perl
- DBD::mysql – libdbd-mysql-perl
推奨Perlモジュール
- HTML::Entities – libhtml-parser-perl (これは例外的に名前が異なるので注意)
- LWP::UserAgent – libwww-perl (これは例外的に名前が異なるので注意)
- SOAP::Lite (バージョン0.5以上) – libsoap-lite-perl
- File::Temp – libfile-temp-perl
- Image::Magick ( または GD, NetPBM, Imager のいずれか) – libimage-magick-perl
- Storable – libstorable-perl
- Crypt::DSA – libcrypt-dsa-perl (wheezy/Ubuntu 12.04) libcrypt-openssl-dsa-perl(squeeze)代用可能か不明? ← 調べ切れていません。
- MIME::Base64 – libmime-base64-perl
- XML::Atom – libxml-atom-perl
- Archive::Tar – libarchive-tar-perl
- Archive::Zip – libarchive-zip-perl
- IO::Compress::Gzip – libio-compress-perl
- IO::Uncompress::Gunzip – libio-compress-perl
Text::Balanced (ブログ内検索で必要) – 不要(perl-modulesでインストール済)
多少、名前の形式が異なって解り難いところもありますが、概ね、名前でわかります。
該当する名前がない場合は、
“Debian XXXX/XXX.pm”
などの形式でGoogleで検索かけると ほとんどの場合は解決します。
では、早速、インストールしてみましょう。
$ aptitude install libimage-size-perl libfile-spec-perl libdbi-perl libdbd-mysql-perl libhtml-parser-perl libwww-perl libsoap-lite-perl libfile-temp-perl libimage-magick-perl libstorable-perl libcrypt-openssl-dsa-perl libmime-base64-perl libxml-atom-perl libarchive-tar-perl libarchive-zip-perl libio-compress-perl
注意: 仮想パッケージ "libimage-magick-perl" の代わりに
"perlmagick" を選択します
以下の新規パッケージがインストールされます:
dbus{a} ghostscript{a} gsspans{a} libarchive-zip-perl libavahi-client3{a}
libavahi-common-data{a} libavahi-common3{a}
libclass-data-inheritable-perl{a} libclass-inspector-perl{a}
libcompress-raw-bzip2-perl{a} libcompress-raw-zlib-perl{a}
libconvert-binhex-perl{a} libcrypt-openssl-dsa-perl
libcrypt-ssleay-perl{a} libcups2{a} libcupsimage2{a} libdbus-1-3{a}
libfcgi-perl{a} libfile-spec-perl libspan-afm-perl{a} libgs8{a}
libhtml-format-perl{a} libhtml-parser-perl libhtml-tagset-perl{a}
libhtml-tree-perl{a} libice6{a} libimage-size-perl libio-compress-perl
libio-socket-ssl-perl{a} libio-stringy-perl{a} libjasper1{a}
libjbig2dec0{a} liblcms1{a} liblqr-1-0{a} liblwp-authen-wsse-perl{a}
libmagickcore3{a} libmailtools-perl{a} libmime-tools-perl{a}
libnet-libidn-perl{a} libnet-ssleay-perl{a} libossp-uuid-perl{a}
libossp-uuid16{a} libpaper-utils{a} libpaper1{a} libsm6{a}
libsoap-lite-perl libtask-weaken-perl{a} libtiff4{a} libwww-perl
libxml-atom-perl libxml-libxml-perl{a} libxml-libxslt-perl{a}
libxml-namespacesupport-perl{a} libxml-parser-perl{a}
libxml-sax-expat-perl{a} libxml-sax-perl{a} libxml-xpath-perl{a}
libxslt1.1{a} libxt6{a} perlmagick
更新: 0 個、新規インストール: 60 個、削除: 0 個、保留: 0 個。
17.5 MB のアーカイブを取得する必要があります。展開後に 46.7 MB のディスク領域が 新たに消費されます。
先に進みますか? [Y/n/?] Y
...
|
と、簡単にインストールできました。
各Perlモジュールに必要なパッケージも自動的にインストールされます。すごいですね。
CPANを扱ったことのある方は、わかるかと思いますが、CPANに比べれば、パッケージ名を調べる手間が多少あるものの パッケージ名さえわかれば 非常に簡単な上にコンパイル作業などもありませんから、瞬時に終わります。
Deabin系を使っている方は、常識?と言って良いほど普通のことですが、CentOSなどのRedHat系からすると、知らない方も多いのではないでしょうか。
CPANも理解しておく必要はありますが、時間短縮には、aptを使ったPerlモジュールのインストールを行った方が良いでしょう。
コメントを投稿 :