RHEL6.1でdistcacheを作成した時の備忘録です。

■説明
distcacheはApacheのSSL/TLSセッションキャッシングを有効にするためのものです。
最新版のApacheをインストールしようとしましたが、RHEL6ではdistcacheパッケージが見当たらなかったので作ってみました。

■エラー
ちなみに、普通にコンパイルしようとすると以下のエラーが発生しました。

proto_fd.o
proto_fd.c: In function 'addr_parse':
proto_fd.c:177: error: 'LONG_MIN' undeclared (first use in this function)
proto_fd.c:177: error: (Each undeclared identifier is reported only once
proto_fd.c:177: error: for each function it appears in.)
proto_fd.c:177: error: 'LONG_MAX' undeclared (first use in this function)
make[2]: *** [proto_fd.lo] エラー 1
make[2]: ディレクトリ `/home/devel/distcache-1.5.1/libnal' から出ます
make[1]: *** [all-recursive] エラー 1
make[1]: ディレクトリ `/home/devel/distcache-1.5.1' から出ます
make: *** [all] エラー 2

これを解決するには、「distcache-version/libnal/proto_fd.c」に「#include <limits.h>」を追加してあげます。
# limits.hを含めないと定義されていないって怒られます。
# rpmパッケージを作成するために参考文献1のようなパッチを作成してみました。

■使用OS
RHEL 6.1 64bit

■OSインストール方法
「基本サーバ」を選択し、追加パッケージで「開発ツール」を追加。

■パッケージ作成ユーザ
devel

(1)必要なパッケージをインストール
[root@example ~]# mount /dev/cdrom /media/
mount: ブロックデバイス /dev/sr0 は書き込み禁止です、読込み専用でマウントします
[root@example ~]# cd /media/Packages/
[root@example Packages]# rpm -ivh openssl-devel-1.0.0-10.el6.x86_64.rpm krb5-devel-1.9-9.el6.x86_64.rpm zlib-devel-1.2.3-25.el6.x86_64.rpm keyutils-libs-devel-1.4-1.el6.x86_64.rpm libcom_err-devel-1.41.12-7.el6.x86_64.rpm libselinux-devel-2.0.94-5.el6.x86_64.rpm libsepol-devel-2.0.41-3.el6.x86_64.rpm
※ここでは、DVDに入っているパッケージをインストールします。

(2)distcache-1.5.1-1.src.rpmをダウンロード
[root@example ~]# su - devel
[devel@example ~]$ wget http://www.kurobuti.com/download/distcache/1.5.1/distcache-1.5.1-1.src.rpm

(3)ビルド環境を整える
[devel@example ~]$ mkdir -p rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

(4)distcache-1.5.1-1.src.rpmをインストール
[devel@example ~]$ rpm -ivh distcache-1.5.1-1.src.rpm
   1:distcache              ########################################### [100%]

(5)パッケージの作成
[devel@example ~]$ rpmbuild -bb rpmbuild/SPECS/distcache.spec

(6)distcacheインストール
[devel@example ~]$ exit
logout
[root@example ~]# rpm -ivh /home/devel/rpmbuild/RPMS/x86_64/distcache-1.5.1-1.x86_64.rpm /home/devel/rpmbuild/RPMS/x86_64/distcache-devel-1.5.1-1.x86_64.rpm
準備中...                ########################################### [100%]
   1:distcache              ########################################### [ 50%]
   2:distcache-devel        ########################################### [100%]

参考文献
1. http://matsuand.b.sourceforge.jp/lfs-tips/packagebuild/distcache/


5月 28, 2011 at 1:10 am by 黒ぶちメガネ
Category: Linux