○ imap/mcryptのインストール

*phpのIMAP関数とMcrypt暗号化関数で使用します
*imap-2007eをソースからインストールします
*libmcrypt-2.5.8のrpmを作成し、インストールします
*make はメンテナンスマシンで行っています

**以降はコメントです
*新規インストールした openssl を使います
*ソースの取得、削除は省略します
*エディタ、ファイラーの操作は省略します
*ソースを展開したら説明文 (英文) を読みましょう
*Enterキーを省略します

*ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
*設定ファイルで "#" で始まる行はコメントとして解釈されます

○関連サイト

:imap-2007e.tar.gz (http://www.wasington.edu/imap/)
:libmcrypt-2.5.8.tar.gz  (http://mcrypt.sourceforge.net/)

○参照ファイル

パッケージの追加
最初の設定 (Xen)
opensslのインストール

○インストール環境

:OS CentOS 5.5
:selinux disabled or permissive
:インストール先 
:作業 /usr/src
:言語 LANG=en_US.UTF-8
:ユーザー rootで実行

*メンテナンスの場合は一般ユーザから行います



○imap-2007e

○ソースの展開・インストール

*EXTRACFLAGSオプション、該当しない場合は指定しない
*sslはデフォルトでは/usr/local/sslに設定されています

# cd /usr/src
# tar zxvf imap-2007e.tar.gz
# chown -R root:root imap-2007e
# cd imap-2007e

# vi src/osdep/unix/Makefile

*Makefileの修正 (下記参照)

# make lnp EXTRACFLAGS="-O2 -march=pentium3" IP=6

*sharedライブラリを作ります

# cd c-client
# gcc -shared -o c-client.so *.o

*ファイルをコピーします

# cp c-client.a /usr/local/lib
# cp c-client.so /usr/local/lib
# cp c-client.h env.h env_unix.h fs.h ftl.h imap4r1.h \
linkage.h mail.h misc.h nl.h nntp.h osdep.h rfc822.h \
smtp.h tcp.h utf8.h utf8aux.h /usr/local/include

*シンボリックリンクを作ります

# cd /usr/local/lib
# ln -s c-client.a libc-client.a
# ln -s c-client.so libc-client.so
# cd /usr/src
# tar jcvf imap-2007e-100522.tar.bz2 imap-2007e/

:imap-2007e/src/osdep/unix/Makefile

SSLDIR=/etc/pki/tls
SSLCERTS=$(SSLDIR)/certs
SSLKEYS=$(SSLDIR)/private
SSLINCLUDE=/usr/include/openssl
SSLLIB=/usr/lib

○selinuxヘの対応 (selinuxが有効の場合)

*新規インストールファイルのselinuxラベルを修正

# restorecon -Rv /usr/local



○libmcrypt-2.5.8

○ソースの展開・インストール

# cd /usr/src
# mkdir libmcrypt
# tar zxvf libmcrypt-2.5.8.tar.gz
# cp libmcrypt-2.5.8.tar.gz redhat/SOURCES
# cp libmcrypt-2.5.8/libmcrypt.spec redhat/SPECS
# cd redhat/SPECS

# vi libmcrypt.spec

*specファイルの修正 (下記参照)

# LANG=C rpmbuild -ba --clean --rmsource libmcrypt.spec
# mv libmcrypt.spec /usr/src/libmcrypt
# cd /usr/src/redhat/RPMS/i386

*作成されたパッケージ
 libmcrypt-2.5.8-5.C55.i386.rpm
 libmcrypt-devel-2.5.8-5.C55.i386.rpm

# rm *debuginfo*
# mv *.rpm /usr/src/libmcrypt
# cd ../../SRPMS

*作成されたパッケージ
 libmcrypt-2.5.8-5.C55.src.rpm

# mv *.rpm /usr/src/libmcrypt

*インストール

# cd /usr/src/libmcrypt
# rpm -Uvh libmcrypt-devel* libmcrypt-2.5.8-5.C55.i386.rpm

:libmcrypt.spec

*EXTRASファイルとコンフリクトするのでReleaseバージョンを上げておく

*省略

Release: 5.C55
License: LGPL

*省略

%build
./configure --prefix=%{prefix} --disable-posix-threads

*省略

%files
#%defattr(-, root, root, 0755)
#%{_libdir}/libmcrypt.so
%{_libdir}/libmcrypt.so*

*省略

%{_includedir}/mcrypt.h
%{_includedir}/mutils/mcrypt.h
%{prefix}/man/man3/mcrypt.*

*省略


○キャッシュ情報の更新と確認

# ldconfig
# ldconfig -p | grep libmcrypt

○ Copyright(c) 528p.com All Rights Reserved.