EPrints 2.3技術文書 - 必要なソフトウェア


EPrintsが必要とするソフトウェア

手短にいえば、EPrintsは、(mod_perl機能付きの)ApacheとMySQL、PerlといくつかのPerlモジュールを必要とします。できれば、wget、tar、unzipも必要です。

インストールの手間を省くために、EPrintsには稼働に必要ないくつかのPerlモジュールを同梱しています。

ソフトウェアの入手先

あなた次第です。我々は、MySQLはRPMから、Apacheはソースからインストールしました。

ソフトウェアを入手する最良の場所はその公式サイトですが、EPrintsで動作確認をしたバージョンを我々のサイトhttp://www.eprints.org/files/tools/に置きました。以下に説明しますが、これら全てをツールディレクトリにインストールする必要はありません。


MySQL

テスト環境のバージョン: 3.23.29a-gamma

MySQL3の最新バージョンをインストールします。MySQL Perlモジュールをインストールするために、ヘッダファイル(.h)とライブラリをインストールする必要もあります。 まもなくMySQL4が登場する予定ですが、今のところ対応する予定はありません。(もしEPrintsをMySQL4で動かすことができたら知らせてください。)

RPMからインストールする場合は、mysql-servermysql-develmysql RPMが必要です。


Apache/mod_perl

テスト環境のバージョン: apache 1.3.14 と mod_perl 1.25

Apacheは世界中で最も広く使用されているWebサーバであり、無料です。 EPrintsには、mod_perlを組み込んだApacheが必要です。mod_perlによりApacheモジュールをすべてPerlで書くことができるので、効率を大幅に高めることができます。

Apacheはhttp://httpd.apache.org/dist/httpd/から入手できます。

EPrintsを動かすには、mod_perlモジュールを有効にする必要があります。

mod_perl機能付きApacheのインストール法

mod_perlとApacheのソースコードをダウンロードします。
mod_perlのsrcディレクトリで次のコマンドを実行して、mod_perlをコンパイルします。:
 % perl Makefile.PL APACHE_PREFIX=/usr/local/apache \
 APACHE_SRC=../apache-1.3.14/src DO_HTTPD=1 USE_APACI=1 \
 EVERYTHING=1

../apache-1.3.14/srcの部分は、実際にApacheのソースを置いたディレクトリに置き換えてください。ディレクトリはコマンドを実行しているディレクトリからの相対で指定してください。各行の最後についているバックスラッシュ(システムによっては円記号)は1つのコマンドを複数行に分けて入力するためのものです。

mod_perlのsrcディレクトリで次のコマンドを実行して、Apacheをコンパイル、インストールします。
 % make
 % make install

(mod_perlのコンパイルの過程で、Apacheの./configureスクリプトはすでに実行されているはずです。)


Perl5.6とPerlモジュール

EPrintsは現在Perl5.6.1上で開発しています。「壊れるまで修理するな」の原則により、今のところ、Perl6に対応させる予定はありません。

いくつかのPerlモジュールはEPrints2パッケージに同梱されていますが、残りは自分でインストールしなければなりません。

Perlモジュールのインストール法

ここでは簡単なPerlモジュールのインストール法を説明します。もう少しインストールが複雑なモジュールもあります。例として、架空のFOOモジュールを使用します。

CPANモジュールで直接インストールできるものもあり、これが利用できれば最高です。これはいつもうまく行くわけではないですが、最も手軽で簡単です。ですので、まずこれを紹介します。CPANモジュールを使ったPerlモジュールのインストールは次のようにします。

 % perl -MCPAN -e 'install Foo::Bar'

ここで、Foo::Barがインストールすべきモジュールです。

各モジュールがCPANモジュールでインストールできるか否かのリストを作成したいと思います。この文書を2003年1月末以前に読んでいたら、うまくいったモジュールやOSを私(Christopher Gutteridge)まで連絡してください。

モジュールアーカイブをダウンロードします
cpan.org、あるいは上で述べたeprints.orgのツールディレクトリページからダウンロードします。我々の例では、アーカイブはFOO-5.23.tar.gzです。

アーカイブを解凍します
 % gunzip FOO-5.23.tar.gz
 % tar xf FOO-5.23.tar
作成されたディレクトリに移動します
 % cd FOO-5.23
以下のコマンドを実行します
 % perl Makefile.PL
 % make
 % make test
 % make install

EPrintsに同梱されているPerlモジュール

以下のモジュールはインストールする必要はありません。EPrintsディストリビューションの一部として含まれています。

XML::DOM, XML::RegExp, Filesys::DiskSpace, URI, Apache::AuthDBI, Unicode::Normalize, Proc::Reliable.

これらのモジュールはEPrintsの一部ではなく、単にインストールを簡単にするために同梱していることに注意してください。なお、不要なモジュールを要求しないようにXML::DOMには一部手を入れていることに注意してください。

必須のPerlモジュール(おそらくインストールが必要であると思われるもの)

以下のモジュールはEPrintsには含まれていませんので、自分でインストールする必要があります。ここで述べる順にインストールすることを勧めます。

Data::ShowTable
MySQLのインターフェースモジュールが必要とします。

DBI
テスト環境のバージョン: v1.14

MySQLのインターフェースモジュールが必要とします。

Msql-Mysql Module
テスト環境のバージョン: v1.2215

インストールには注意を要します。インストールにはMySQLのヘッダファイルとライブラリが必要だからです。MySQLをソースからインストールした場合は問題ありませんが、その他の方法でMySQLをインストールした場合は、このモジュールが期待する場所にヘッダファイルとライブラリが置かれていない場合もあるので注意が必要です。 インストール時の最初の質問に対しては、MySQLのサポートのみが必要だと答えてください。

RedHat GNU/Linuxを使っている場合は、このモジュールをインストールする前に、zlib-devel RPMをインストールする必要があります。

MIME::Base64
テスト環境のバージョン: v2.11

Unicode::String が必要とします。

Unicode::String
Unicodeを扱うために使用します。既知の問題はありません。v2.06でテストを行いました。

XML::Parser
テスト環境のバージョン: v2.30

XMLファイルをパースするのに使用します。expatライブラリを必要とします。eprints.orgのtoolディレクトリページでtarballとRPMを入手できます。

Apache
Apache.pmモジュールはmod_perlの一部です。Apacheの一部としてmod_perlをインストールする際、このモジュールもインストールされているはずです。

Apache::Request 別名、libapreq
このPerlモジュールは、Apacheサーバとのインターフェースとして使用されます。現在まだ開発中ですが、バージョン1.3は問題なく動きます。ただし、一連のtestが失敗するので、CPANモジュールを使わず、ソースからコンパイルしなければなりません。面倒ですね。

必須のPerlモジュール(既にインストール済みと思われるもの)

Perl5.6以降のほとんどのシステムは、以下のモジュールを既に持っていると思われますが、ソースからインストールする必要のあるOSもあるかもしれません。

CGI, Carp, Cwd, Data::Dumper, Digest::MD5, File::Basename, File::Copy, File::Find, File::Path, Getopt::Long, Pod::Usage, Sys::Hostname.


GDOMEサポート(オプション)

EPrints2.2以降では、XML::DOMとXML::GDOMEのいずれかを使用することができます。XML::GDOME の方が早くて、メモリ使用量も少ないのでお勧めですが、さらに多くのライブラリやPerlモジュールのインストールが必要となります。試験運用やデモンストレーション目的であれば、XML::DOMで十分です。また、必要なツールをインストールして、perl_lib/EPrints/SystemSettings.pmのGDOMEフラグをセットすればいつでも変更することができます。

GDOMEサポートのために追加する必要のあるライブラリ

 libxml2
 libxml2-devel

どちらもftp://ftp.gnome.org/pub/GNOME/sources/libxml2/からtarballを入手します。

あるいは、以下のRPMを使用します(ただし、我々は複雑なRPMの依存関係による問題に遭遇しました)。

 http://rpmfind.net/linux/rpm2html/search.php?query=libxml2
 http://rpmfind.net/linux/rpm2html/search.php?query=libxml2-devel

GDOMEライブラリ

以下のURLから入手します。

 http://gdome2.cs.unibo.it/#downloads

RPM(gdome2とgdome2-devel)あるいはtarballのどちらも利用することができます。

GDOMEサポートのために追加する必要のあるPerlモジュール

 XML-LibXML-Common
 XML-NamespaceSupport
 XML-GDOME

これらはすべてhttp://www.cpan.org/modules/by-module/XML/にあリます。


その他のツール

ファイルのアップロード

ユーザによる.tar.gzあるいは.zip形式によるファイルのアップロード、および、URLからのファイルの取り込みのためには、wgettargunzipunzipが必要です。

これらはすべて、ほとんどのLinuxディストリビューションに含まれているはずです。これらを動かすことができたら、SystemSettings.pmにある「archive_formats」を編集してオプションをはずすことができます。

wget 1.6でテストを行いました。

うまく動かない場合は、SystemSettings.pmで設定されているコマンドの呼び出し法を修正する必要があるかもしれません。


フルテキストの索引化

フルテキストの索引化には、ドキュメントの種類毎に様々な索引化ツールが必要です。これらのツールは既にインストール済みの場合もあれば、まだインストールされていない場合もあるでしょう。EPrintsはこれらのツールを使用して(UTF-8で書かれたテキストが含まれている)各ドキュメントから「単語」ファイルを作成します。ツールが利用できない場合は「単語」ファイルは空となります。このファイルを削除しない限り、EPrintsは単語ファイルを再作成することはありません。

PDF
pdfファイルを索引化するには「pdftotext」が必要です。これは「xpdf」パッケージに含まれています。RPMが利用できます。

テキスト
テキストファイルを索引化するには何も必要ありません。簡単です。

Microsoft Word
MS Wordファイルを索引化するには「wvware」というパッケージが必要です。インストールは少し大変です。

HTML
HTMLファイルを索引化するには「lynx」というツールが必要です。これはテキストベースのWebブラウザです。


Latexツール

EPrintsのオプション機能として、特定のフィールド(タイトルや抄録など)にLaTexで書かれた数式がないかを調べて、その数式を画像として表示する機能があります。 以下に述べるツールは、この機能を使用する場合にのみ必要なものです。

latexdvipsconvert(convertは「imagemagick」に含まれています)。 (RedHat GNU/Linuxディストリビューションにはこれらのツールがすべて含まれていますが、その他のシステムではインストールする必要があるかもしれません。)

これは「外見を良くするための」機能であり、情報の見せ方にのみ影響を与えるものです。初期構築の時間を節約したい場合はインストールする必要はありません。後でいつでも追加することができます。

 EPrints 2.3技術文書 - 必要なソフトウェア