Apache2のRPMの生成

まずはApache2のRPMを生成する。
はじめは2.0.55でやっていたのだけれど、いざ動かしたときに「aprのバージョンが低い」とかで怒られたので2.0.54で作ることにする(aprのバージョンを0.9.7に上げようとすると今度は「libcのバージョンが低い」って怒られる(「--force」とかつければ行けるかもしれないけれど、怖いのでやらない))。
で、実際の作業としては前段階としてaprを入れる。これは素直にそこらへんに転がっているRPMからインストールする。

root#rpm -Uvh ./apr-0.9.6-3.1.i386.rpm
root#rpm -Uvh ./apr-devel-0.9.6-3.1.i386.rpm
root#rpm -Uvh ./apr-util-0.9.6-2.i386.rpm
root#rpm -Uvh ./apr-util-devel-0.9.6-2.i386.rpm

次のコマンドで幸せになれたことを確認。

root#rpm -q apr
root#rpm -q apr-devel
root#rpm -q apr-util
root#rpm -q apr-util-devel

次にtarの中の「httpd.spec」を改竄する。
このファイルは「httpd-2.0.54.tar.gz」を展開したフォルダの直下に入っているのだが、FC4の標準のrpmbuildコマンドだと「Serial」とか「rm(略)manual/*/*.xml」の2行で怒られてしまうようなのでこれらの行をコメントアウトしておく。
前者は「Version」の解釈間違いの防止用、後者はお掃除用(?)っぽいので消しても問題ないでしょう。多分。
で、改竄した「httpd.spec」を含んだフォルダをtarとgzipで「httpd-2.0.54.tar.gz」に戻し、材料が完成。

で、うりゃうりゃっと以下のコマンドを実行。

user$rpmbuild -ta ./httpd-2.0.54.tar.gz

これでめでたくApache2のRPMが完成。
「(RPM置き場)/RPMS/i386」と「(RPM置き場)/SRPMS」に6個ぐらいのRPMファイルが生成されている。
で、ホクホクしながら次のコマンドでインストール。結局devel入れてるじゃん。

root#rpm -Uvh ./httpd-2.0.54-1.i386.rpm
root#rpm -Uvh ./httpd-devel-2.0.54-1.i386.rpm

さらに、ちゃんとインストールされて幸せになれたことを確認。

root#rpm -q httpd
root#rpm -q httpd-devel

ついでに自動起動を追加。

root#chkconfig httpd on

自動起動が有効になっていることを確認。

root#chkconfig --list httpd

おまけに現時点で立ち上げておく。

root#service httpd restart

ただ、このRPMでインストールすると「/etc/httpd/conf/httpd.conf」内に2箇所ある「/var/www/htdocs」を「/var/www/html」に変更する必要がある。
本当はtarファイルを展開したときについでに直しておけば良かったのだけれど、面倒なので生成したRPMはそのままの状態で放置してある。