ほとんどの人は、以下のようにすれば、十分です:
./configure make sudo maek install |
この操作は、Dovecotを /usr/local ディレクトリにインストールします。 設定ファイルは /usr/local/etc/dovecot.conf になります。 デフォルトでは syslog の facility は mail で記録され、多くの場合、 /var/log/mail.log か似たような名前のファイルに記録されます。 もし、急ぎでしたら、 QuckConfiguration の文章に行ってください。
もし、Dovecot に必要なライブラリを特別な場所にインストールした 場合は、 CPPFLAGS と LDFLAGS を環境変数として指定してあげなければ なりません。例えば以下のようにです(bash などの sh 系の例です)。
CPPFLAGS=-I/opt/openssl/include LDFLAGS=-L/opt/openssl/lib ./configure |
もし CVS から Dovecot を得る場合は、 configure スクリプトを 作るため、まず最初に ./autogen.sh を実行します。 このときは、既に pkg-config パッケージがインストールされている必要があります (/usr/share/aclocal/pkg.m4 ファイルが必要です)。
Dovecot はまず最初に OpenSSL と GNUTLS をサポートするために 作成されました。しかし、 GNUTLS には若干の問題があり、今はもう 動かなくなりました。その修正パッチは喜んで迎え入れます。
現在 OpenSSL がデフォルトで使用されます。そして、それは自動的に 見つけられるようになっています。もし、見つかられない場合は、 いくつかのヘッダーファイルかライブラリがない、もしくは 標準的なパスにインストールされていないということでしょう。 openssl-dev もしくはそのような名前のパッケージがインストールされて いることを確認してみてください。そして、標準的な場所にない場合は 最初のセクションで示したように CPPFLAGS と LDFLAGS を付けてください。
デフォルトでは SSL の証明書は /etc/ssl/certs/dovecot.pem から読まれ、 プライベートキーは /etc/ssl/private/dovecot.pem から読まれます。 /etc/ssl ディレクトリは --with-ssldir=DIR という configure の オプションで変更できます。もちろん、Dovecot の設定ファイルからも 変更することができます。
注意:Linux カーネル 2.6.13-rc3 から現在の inotify がありますが、 それは dnotyfy を使うことよりも望まれます。 もしディストリビューションの中に必要なヘッダファイルが 入ってない場合は、 inotify の管理者から得るようにしてください。
mkdir -p /usr/local/include/sys cd /usr/local/include/sys curl ftp://ftp.kernel.org/pub/linux/kernel/people/rml/inotify/headers/inotify.h -O curl ftp://ftp.kernel.org/pub/linux/kernel/people/rml/inotify/headers/inotify-syscalls.h >> inotify.h |
--help は利用可能な全てのリストを表示します。
オプションは通常 --with-something もしくは --enable-something という 形で使います。もし、それらを使いたくない場合は --without-something もしくは --disable-something とします。autoconf や automake や libtool からの 多くのデフォルトオプションがあります。そのオプションは、どこか 別な場所で解説されています。
Dovecot が加えたオプションのリストを示します。通常は、これらの オプションを変える必要はありませんが、完全を期すため、ここに 書きます。
-−enable-ipv6 IPv6 のサポートを有効にします。もし、システムが サポートしていることがわかれば、これはデフォルトで有効になります。
-−enable-debug デバッグするためのいくつかの特別なチェックを有効にします。 これは開発者にとって、とても役立ちます。これは、非常に多くの不必要な ことをしますが、いくつかのプログラミングの間違いを、さらに早く 把握することができます。
-−enable-asserts アサートチェックを有効にします。デフォルトで 有効になります。無効にすれば CPU の使用をわずかに抑えられるかも しれませんが、見つかる前のバグがあった場合に、多くの問題が 発生する可能性があります。
--with-file-offset-size=BITS ファイルオフセットを 32 ビットにするか 64 ビットにするか指定します。システムがサーポートする場合は、 64 ビットがデフォルトになります(Linux と Solaris はサポートします)。 32 ビットに下げることは、メモリの使用を抑えることができますが、 2GB 以上のサイズのファイルにアクセスすることが出来なくなります。
--with-mem-align=BYTES メモリアロケーションのために使われる記憶領域を 設定します。多くの x86 ではないシステムでは設定が必要で、 x86 システムと同様に設定することで速度が早くなります。 デフォルトは 64 ビットメモリをアクセスするため 8 になります。
--with-ioloop=IOLOOP どのような I/O ループを使用するか設定します。 poll と epoll が選択可能です。デフォルトは可能ならば poll を 使い、 select に頼ります。 epoll は poll よりも高速ですが、 Linux 2.6 カーネルでしか動作しません。
--with-notify=NOTIFY 使用するファイルシステム通知方法について設定します。 dnotify, inotify(この2つは Linux), kqueue(FreeBSD), none が 設定できます。デフォルトは、コンパイルできるなら dnotify が使われ、 コンパイルできなければ none が使われます。 詳細は上記の通知方法の項を参照してください。
--with-pop3d IMAP サーバと同様に POP3 サーバのバイナリを作成さいます (デフォルトで作成されます)。実際に使う前に、これとは別に Dovecot の 設定ファイルにて有効にしなければなりません。
--with-storages=FORMATS メールボックスサポートについて設定します。 デフォルトは maildir と mbox で両方サポートします。
システムが下記の認証をサポートしていると判定されれば、 基本のバックエンドを作成します。
--with-passwd Build with /etc/passwd support (default) --with-passwd-file Build with passwd-like file support (default) --with-shadow Build with shadow password support (default) --with-pam Build with PAM support (default) --with-checkpassword Build with checkpassword support (default) --with-bsdauth Build with BSD authentication support (default) --with-static-userdb Build with static userdb support (default) --with-vpopmail Build with vpopmail support (default) |
いくつかの認証は、必ずしも必要ではないのですが特別なライブラリを 必要としています。なので、もし特別に可能であった場合のみ、 ビルドされます。
--with-ldap Build with LDAP support --with-pgsql Build with PostgreSQL support --with-mysql Build with MySQL support |
Dovecot は $prefix/lib/dovecot/auth/ ディレクトリから認証モジュールを 動的にロードすることもできます。 バイナリパッケージの作者は、外部のライブラリ(例えば LDAP や vpopmail)を 必要とする認証モジュールのため、以下のコマンドを使うべきです。 現在、モジュールとしてこれらを作成する標準的な方法がありませんが、 以下のようにすれば、動くはずです。
gcc -shared -fPIC -DHAVE_CONFIG_H -DUSERDB_LDAP -DPASSDB_LDAP \ -I../.. -I../lib -I../lib-settings \ db-ldap.c userdb-ldap.c passdb-ldap.c -o ldap.so \ ../lib-settings/libsettings.a -lldap gcc -shared -fPIC -DHAVE_CONFIG_H -DUSERDB_PGSQL -DPASSDB_PGSQL \ -I../.. -I../lib -I../lib-settings -I/usr/include/postgresql \ db-pgsql.c userdb-pgsql.c passdb-pgsql.c -o pgsql.so \ ../lib-settings/libsettings.a -L/usr/lib/postgresql -lpq gcc -shared -fPIC -DHAVE_CONFIG_H -DUSERDB_VPOPMAIL -DPASSDB_VPOPMAIL \ -I../.. -I../lib userdb-vpopmail.c passdb-vpopmail.c -o vpopmail.so \ -lvpopmail |
libsettings.a を ldap.so と pgsql.so に含めることは面倒ですが、 Dovecot の認証では、必要ではありません。
もし imap_use_modules もしくは pop3_use_modules を yes にしたならば、
mail_modules の設定から指定されるディレクトリの全ての *.so モジュールを
ロードします。そのモジュールは何でもでき、モジュールは呼び出される