![]() |
LINUX |
imap/mcryptのインストール
・phpのIMAP関数とMcrypt暗号化関数で使用します
・imap-2007fをソースからインストールします
・libmcrypt-2.5.8のrpmを作成し、インストールします
・make はメンテナンスマシンで行っています
・新規インストールした openssl を使います
・ソースの取得、削除は省略します
・エディタ、ファイラーの操作は省略します
・ソースを展開したら説明文を読みましょう
・Enterキーを省略します
・ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
・設定ファイルで "#" で始まる行はコメントとして解釈されます
関連サイト| :imap-2007f.tar.gz | (http://www.washington.edu/imap/) |
| :libmcrypt-2.5.8.tar.gz | (http://mcrypt.sourceforge.net/) |
参照ファイル:パッケージの追加
:最初の設定 (Xen)
:opensslのインストール
インストール環境| :OS | CentOS 5.6 |
| :selinux | disabled or permissive |
| :インストール先 | |
| :作業 | /usr/src |
| :言語 | LANG=en_US.UTF-8 |
| :ユーザー | rootで実行 |
・メンテナンスの場合は一般ユーザから行います
imap-2007f
ソースの展開・インストール・EXTRACFLAGSオプション、該当しない場合は指定しない
・sslはデフォルトでは/usr/local/sslに設定されています
# cd /usr/src [root@jupiter:/usr/src] # tar zxvf imap-2007f.tar.gz # chown -R root:root imap-2007f # cd imap-2007f [root@jupiter:/usr/src/imap-2007f]
# vi src/osdep/unix/Makefile
・Makefileの修正 (下記参照)
# make lnp EXTRACFLAGS="-O2 -march=pentium3" IP=6
・sharedライブラリを作ります
# cd c-client
[root@jupiter:/usr/src/imap-2007f/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 [root@jupiter:/usr/local/lib] # ln -s c-client.a libc-client.a # ln -s c-client.so libc-client.so # cd /usr/src [root@jupiter:/usr/src] # tar jcvf imap-2007f-110728.tar.bz2 imap-2007f/
:imap-2007f/src/osdep/unix/Makefile
SSLDIR=/etc/pki/tls SSLCERTS=$(SSLDIR)/certs SSLKEYS=$(SSLDIR)/private SSLINCLUDE=/usr/include/openssl SSLLIB=/usr/lib
selinuxヘの対応 (selinuxが有効の場合)・新規インストールファイルのselinuxラベルを修正
# cd ~
[root@jupiter:~]
# restorecon -Rv /usr/local
libmcrypt-2.5.8
ソースの展開・インストール# cd /usr/src [root@jupiter:/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 [root@jupiter:/usr/src/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
[root@jupiter:/usr/src/redhat/RPMS/i386]
・作成されたパッケージ
libmcrypt-2.5.8-5.C56.i386.rpm
libmcrypt-devel-2.5.8-5.C56.i386.rpm
# rm *debuginfo*
# mv *.rpm /usr/src/libmcrypt
# cd ../../SRPMS
[root@jupiter:/usr/src/redhat/SRPMS]
・作成されたパッケージ
libmcrypt-2.5.8-5.C56.src.rpm
# mv *.rpm /usr/src/libmcrypt
・インストール
# cd /usr/src/libmcrypt
[root@jupiter:/usr/src/libmcrypt]
# rpm -Uvh libmcrypt-devel* libmcrypt-2.5.8-5.C56.i386.rpm
:libmcrypt.spec
・EXTRASファイルとコンフリクトするのでReleaseバージョンを上げておく
・省略
Release: 5.C56 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.*
・省略
キャッシュ情報の更新と確認
# cd ~
[root@jupiter:~]
# ldconfig
# ldconfig -p | grep libmcrypt
![]() |
Copyright(c) 528p.com All Rights Reserved. |

