スタッフブログ
hamacoです。
普段使用しているLinuxがCentOSなのでYUMでインストールできるパッケージが古く、一々最新のバージョンをソースからインストールするのが面倒になってきたのでRPMを作る環境を整えてみました。
普段使用しているLinuxがCentOSなのでYUMでインストールできるパッケージが古く、一々最新のバージョンをソースからインストールするのが面倒になってきたのでRPMを作る環境を整えてみました。
まずはRPMを作る環境を用意します。
次にSPECファイルをSPECS/php.specに作成します。
あとはrpmbuildコマンドを叩くだけです。
RPM毎にディレクトリを分ける必要がなければ、$HOME/.rpmmacrosに下記の様に書いておくと毎回ディレクトリを指定しなくて良いので楽になります。
CentOSやFedoraなんかのリポジトリにあるようなRPMはもっと複雑だったりして面倒ですが、簡単なRPMくらいなら上記のような感じで作ることができます。
ソースをDLしてきて、Versionを変更するだけで簡単にアップデートとかできるのでPHP5.3をちょっと試してみたい時とかにお勧めです。
% sudo yum install -y rpm-build
% mkdir $HOME/rpm/php5/{BUILD,SRPMS,SPECS,SOURCES,RPMS}
% cd $HOME/rpm/php5
% wget -P SOURCES -N http://jp2.php.net/get/php-5.2.10.tar.bz2/from/this/mirror
次にSPECファイルをSPECS/php.specに作成します。
%define _prefix /usr/local
Name: php5
Summary: PHP: Hypertext Preprocessor
Group: Development/Languages
Version: 5.2.10
Release: 0
License: The PHP License
Source0: http://www.php.net/distributions/php-%{version}.tar.bz2
URL: http://www.php.net/
Packager: Hamaco
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
test rpm.
%prep
%setup -q -n php-%{version}
%build
./buildconf --force
%configure
%{__make} %{?_smp_mflags} -k CC="%{__cc} ${RPM_OPT_FLAGS}"
%install
%{__rm} -rf %{buildroot}
%makeinstall
%clean
%{__rm} -rf %{buildroot}
%files
%{_prefix}
%{_mandir}
%changelog
* Tue Aug 04 2009 Hamaco <hamaco@ryus.co.jp> - 5.2.10-0
- test release.
あとはrpmbuildコマンドを叩くだけです。
% rpmbuild --define "_topdir ${PWD}" -ba SPECS/php5.spec
%_topdir /home/hamaco/rpm
CentOSやFedoraなんかのリポジトリにあるようなRPMはもっと複雑だったりして面倒ですが、簡単なRPMくらいなら上記のような感じで作ることができます。
ソースをDLしてきて、Versionを変更するだけで簡単にアップデートとかできるのでPHP5.3をちょっと試してみたい時とかにお勧めです。