courier-imap 3.0.0 のインストール 【失敗編】

SERVER


courier-imap

courier-imap は、qmail の Maildir 形式に対応した IMAP サーバです。

IMAP は、サーバにてメールを管理しますので、POP3 のように、ひとりで複数台のコンピュータを利用するような場合でもサーバからダウンロードしてしまうことがないので、気兼ねなくメールの受信ができます。 また、ヘッダーのみをダウンロードすることもできるので、膨大な量のメールを取り扱う人にも何かと便利かと思います。

以前にも、EZ-NET: courier-imap 0.32 のインストールEZ-NET: courier-imap 1.2 へのアップグレード でも何度か触れましたけど、今回、バージョンが大きくなっていたので念のため記事に残しつつインストールしてみることにしました。

が、結局のところ、うまくインストールできずに終わってますので注意してください。

 

Courier IMAP のインストール

Courier IMAP は Inter7 Internet Technologies さまのサイトからダウンロードすることができます。

ここから courier-imap-3.0.0.tar.bz2 をダウンロードしたのですけど、TAR.BZ2 …、それなりに Linux は使っていたと思うのですけど、この形式は初めてなのでした。展開の際には、 z のかわりに y を指定すればいいようです。

 

なにはともあれ、インストール前の段階では一般ユーザで実行せよとのことなので、一般ユーザでログインしたら、次のようにして展開してインストールまでの準備を行います。

tar xvyf courier-imap-3.0.0.tar.bz2

 

./configure

make

make check

ちゃんと必要なものがそろっていればうまくいくのでしょうけど、今回の自分の環境では ./configure の時点で次のようなエラーが出てしまいました。

configure: error: Cannot find either the gdbm or the db library.

なにやら gdbm か db library が無いとのことです。

GDBM は仮想メールボックス userdb 認証モジュールで使用する (?) らしいです。個人的にはなんだか必要なさそうな気もするのですけど、入れなくてはならなそうなので探してみました。

 

db library (BerkeleyDB) のほうが Sleepycat Software Berkeley DB Application-Specific Data Management and XML Database さまより公開されていましたので、とりあえず db-4.2.52.tar.gz をダウンロードしました。ライブラリだけ公開されていればよかったのですけど、どうもそのようなものはなさそうでした。

丸ごとインストールするのはなんだか大げさだったので何か方法は無いかと探してみたところ、Solarisでrpm というページにてそれらしいことが書いてありました。やってみたのですけど、Courier IMAP がライブラリを見つけてくれなかったので、最終的には普通にインストールしてしまいました。

tar xvzf db-4.2.52.tar.gz

cd db-4.2.52/build_unix/

 

../dist/configure

make

make install

ところが、これでやってもライブラリが見つからず、/usr/lib/ などから libdb.a へシンボリックリンクをはったりしてもだめ…、といろいろやっていたらどうやらもともと /usr/lib/ に libdb.a が入っていたようで、うっかり上書きしてしまいました。

 

ほかにも --with-db=db としたり、--libdir= で libdb.a のディレクトリを指定したりしてみましたけど、うまくいく気配がありませんでした。仕方なく、もう一方の gdbm - GNU Project - Free Software Foundation (FSF) の方をインストールしてみます。

gdbm-1.8.3.tar.gz をダウンロードして、次のようにインストールしました。

tar xvzf gdbm-1.8.3.tar.gz

cd gdbm-1.8.3/

 

./configure

make

make install

make install-compat

そしてあらためて Courier IMAP を configure しようとするも…、やはりエラーです。

なんだかうまくいかないながら、これ以上サーバをいじくりまわすのもなんなので、とりあえずは中止という感じにしてしまいました。