28
4月
0
Vine5.x用のphp-5.3.2
PHP5.3.2がリリースされてたからずっとRPMのビルドに四苦八苦しておりましたが・・・
ようやく作ることができましたヽ(´ー`)ノ
いつもなら
1.php5-5.3.1-1vl5.src.rpmをダウンロードしてきてインストール
> rpm -ivh php5-5.3.1-1vl5.src.rpm
2.php-5.3.2.tar.bz2をダウンロードしてきてphp-5.3.1.tar.bz2と差し替え
> cd /usr/src/vine/SOUCES
> wget http://jp2.php.net/get/php-5.3.2.tar.bz2/from/jp.php.net/mirror
> rm -f php-5.3.1.tar.bz2
3.SPECファイルのバージョンを5.3.2に修正
> vi /usr/src/vine/SPECS/php53.spec
4.ビルド
> rpmbuild -ba --clean /usr/src/vine/SPECS/php53.spec
5.アップグレード
> rpm -Uvh php5-5.3.2-1vl5.i386.rpm ・・・
で完了なのですが、今回もビルドは一応完了するもののphp5-5.3.2-1vl5.i386.rpmに含まれる依存関係が1箇所おかしなことになるのです(´・ω・`)
> rpm -qpR php5-5.3.2-1vl5.i386.rpm
alternatives
php5-pear = 5.3.2-1vl5
rpmlib(VersionedDependencies) <= 3.0.3-1
/bin/sh
/bin/sh
/bin/sh
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
/usr/src/vine/BUILD/php-5.3.2/build-cgi/sapi/cli/php
libbz2.so.1
・
・
・
( ´゚д゚`)???
悩み続けること2日・・・どうやら最後に依存関係を勝手に追加してくださる”find-requires”が悪さしているというとこまではわかったのですが、これをどうやって正常な値(/usr/bin/php5)に修正すればよいのやら・・・
試行錯誤した結果、最終的にspecファイルに下記を追加してphp-5.3.2のrpmビルド用”find-requires”を作って正常な値に修正するという荒業で凌ぎました(゚Д゚)
--- php53.spec 2010-04-28 23:03:00.000000000 +0900
+++ php53.spec.org 2010-04-28 23:02:38.000000000 +0900
@@ -341,6 +341,10 @@
#==========================
%prep
+echo "%{__find_requires} | sed -e 's|${RPM_BUILD_DIR}/%{srcname}/build-cgi/sapi/cli/php|%{_bindir}/php5|g'" > %{_tmppath}/find-requires-php
+chmod +x %{_tmppath}/find-requires-php
+%define __find_requires %{_tmppath}/find-requires-php
+
%setup -q -n %{srcname}
%patch33 -p1 -b .phpincludedir
↑は/var/tmpにfind-requires-phpを作って”find-requires”として認識させております。
find-requires-phpは単純に”find-requires”の結果から/usr/src/vine/BUILD/php-5.3.2/build-cgi/sapi/cli/phpを/usr/bin/php5に置換しているだけです。
結果以下のようにちゃんと修正されました
> rpm -qpR php5-5.3.2-1vl5.i386.rpm
alternatives
php5-pear = 5.3.2-1vl5
rpmlib(VersionedDependencies) <= 3.0.3-1
/bin/sh
/bin/sh
/bin/sh
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
/usr/bin/php5
libbz2.so.1
・
・
・
よかったよかった・゚・(ノД`)・゚・
Enjoyed reading this post?
Subscribe to the RSS feed and have all new posts delivered straight to you.
Subscribe to the RSS feed and have all new posts delivered straight to you.
Post your comment
