- PR -

PHP5のRPMファイル

投稿者投稿内容
sora
会議室デビュー日: 2006/03/28
投稿数: 10
投稿日時: 2006-09-07 20:42
いつもお世話になっております。

これからRedHat Enterprise Linux ES 4にPHP5をインストールしたいと思っているのですが、ネット上でいろいろ探しているのですが見つからず、、どなたかご存知であればと思い投稿いたしました。ソースから入れるという手もありますが、なるべくrpmで入れたいと思っております。

よろしくお願いします。
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2006-09-07 21:23
こんばんわ.

RHEL4 に含まれている PHP は 4 のようですので,
「PHP5 を RPM で」ということであれば RPM package を
ご自分で自作するしかないと思います.

F/A
ぬし
会議室デビュー日: 2006/03/18
投稿数: 312
お住まい・勤務地: Tokyo
投稿日時: 2006-09-07 22:32
http://mirror.centos.org/centos/4/centosplus/x86_64/RPMS/
http://mirror.centos.org/centos/4/centosplus/i386/RPMS/

上記にあるPHP5はRHEL4のクローンOSであるCentOS用ですので、
多分RHEL4でも動くと思います。


しかし、ここのフォーラムはCentOSよりはRHEL使ってる人が多いですよね。
わざわざRedhatサポート外の製品をRHELにインストールしたいとおっしゃられるのは
ある意味で勇気があるなぁ…と思います。

[ メッセージ編集済み 編集者: F/A 編集日時 2006-09-07 22:40 ]
sora
会議室デビュー日: 2006/03/28
投稿数: 10
投稿日時: 2006-09-07 23:44
kazさん

そうでねぇ〜。今までrpmパッケージを作った事がないので、てっとり早くあれば・・と思った次第です。時間があればチャレンジしたいと思います。

F/Aさん

情報ありがとうございます。RHELに入ってるPHP4でもなんでも個人的にはいいんですが。。PHP5でないとだめだということなので。。

どちらにしてもちょっと苦労しそうですね^^;
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2006-09-08 01:19
今、手元に無いのでちょっとうろ覚えですが。

PHPのソースを取ってくると、makerpmってスクリプトありませんでしたか?
やってみたのが随分前の事ですのでうろ覚えですが、そのスクリプトを実行するとパッケージを作ろうとするはずです。
(確か、以前やってみた際にはうまくいかなくて、そのスクリプトが作ったspecファイルを改造したりしてなんとか動かした事があった気がします。)
sora
会議室デビュー日: 2006/03/28
投稿数: 10
投稿日時: 2006-09-08 12:52
冬寂さん

ありがとうございます。たしかにmakerpmファイルありました。

※ここからはRHENではなくfedora上での確認作業です。

さっそくコマンド打ってみたのですが。。

#pear makerpm php-5.1.6.tar.gz
warning : you are using an archive with an old format
no package.xml file after extracting the archive

どうも古いアーカイブを使っているという意味らしいですが。。このエラーの意味もよくわからず、とりあえずpearのアップグレードを行ってみしまたが・・・。

# pear upgrade-all
Will upgrade archive_tar
Will upgrade db
Will upgrade http
Will upgrade mail
Will upgrade net_smtp
Will upgrade pear
Will upgrade xml_parser
Will upgrade xml_rpc
downloading Archive_Tar-1.3.1.tgz ...
Starting to download Archive_Tar-1.3.1.tgz (15,102 bytes)
.....done: 15,102 bytes
downloading DB-1.7.6.tgz ...
Starting to download DB-1.7.6.tgz (124,807 bytes)
...done: 124,807 bytes
downloading HTTP-1.4.0.tgz ...
Starting to download HTTP-1.4.0.tgz (4,593 bytes)
...done: 4,593 bytes
downloading Mail-1.1.10.tgz ...
Starting to download Mail-1.1.10.tgz (16,866 bytes)
...done: 16,866 bytes
downloading Net_SMTP-1.2.8.tgz ...
Starting to download Net_SMTP-1.2.8.tgz (11,274 bytes)
...done: 11,274 bytes
downloading PEAR-1.4.11.tgz ...
Starting to download PEAR-1.4.11.tgz (283,272 bytes)
...done: 283,272 bytes
downloading XML_Parser-1.2.7.tgz ...
Starting to download XML_Parser-1.2.7.tgz (12,939 bytes)
...done: 12,939 bytes
downloading XML_RPC-1.5.0.tgz ...
Starting to download XML_RPC-1.5.0.tgz (31,619 bytes)
...done: 31,619 bytes
PHP Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 45 bytes) in /usr/share/pear/PEAR/Common.php on line 2058
Allowed memory size of 8388608 bytes exhausted (tried to allocate 0 bytes)

と途中で止まってしまいました。メモリのサイズが足りない?のかCommon.phpの2058行目を見たのですが意味不明でした。。

とりあえずこの手の作業等でRHEL上でrpmが作れればいいのですが。。Chekinstallというのを使う手もあるみたいなので、いろいろ試してみたいとは思っています。


冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2006-09-08 13:44
引用:

soraさんの書き込み (2006-09-08 12:52) より:
#pear makerpm php-5.1.6.tar.gz
warning : you are using an archive with an old format
no package.xml file after extracting the archive


Σ( ̄□ ̄;)!!
まさか、pearで実行するなんて便利な方法があったとは・・・って、PHP実行環境が無かったら出来ないでしょ^^;
(卵が先か、鶏が先か。)
ま・・・まぁ、私もドキュメント見ないで勝手にやってみた事なんで正しいかは分かりませんが、makerpmは普通のシェルスクリプトのはずなので、普通に実行してあげましょう。
うちで見てるのは5.1.4なのでそちらとは違う可能性はありますが、実行bitを立ててからそのディレクトリ上で「./makerpm」です。

(とりあえず、うちで最初に実行してみた結果、「-ba: unknown option」ですが、これの理由は「rpm のオプションが多くなりすぎたので、rpmbuild に分けた」です(たぶん)。もし同じエラーが出た場合は、rpm -ba を探して修正してあげましょう。)
(その後にも、場合によっては「旧来の構文」とかエラーが出るかもしれませんが、そこら辺は恐らく spec ファイルの構文が変更された為なので適当に修正してあげればいいはず。ここら辺はすごく長くなってしまうので説明を省きます(汗))

とりあえず、このスクリプトがやっている事を説明すると
・その環境に合ったspecファイルを作り、/usr/src/redhat/SPECSにコピーする
・phpソースを展開したディレクトリを tar.gz化して/usr/src/redhat/SOURCESにコピーする
・rpm -ba -v スペックファイルを実行する
ですので、specファイルをごにょごにょ改造してrpm(build) -ba -v php-5.1.6.specとでもすればパッケージが出来る訳なのです。

# 今朝、ふと checkinstall ってのもあるって思い出したのですが、すでに知ってるみたいですね。
まぁ checkinstall の方が断然楽のはずです。
sora
会議室デビュー日: 2006/03/28
投稿数: 10
投稿日時: 2006-09-08 14:29
冬寂さん

いろいろとありがとうございます。あっ!./makerpm」だったですね。。なぜ?pearで実行する方法に至ったのかつい数十分前の事ですが・・思い出せません・・・(汗)

そんなこんなしてるあいだにcheckinstallを試してみまた。たしかにrpmファイルが作成されました。それでインストールもできました。。が。その後apacheをリスタートするたけではダメなんですね。。phpファイルが普通のファイルとして扱われてしまってました。

今までrpmでインストールして再起動すればOKだったのですが・・・いろいろ手で設定が必要なんですねぇ。ということは世に出回っているrpmファイルはその辺の設定がされている?インストール時に自動的にされる?ようになっているって事なんですかね。

それと基本的な事がわかってないのかもしれませんが、phpのrpmファイルにはphp-pgsqlとかいろいろありますよね?これはまた別途ソースからrpm作成をしないといけないものなのでしょうか。。

で./makerpm実行してみました。

確かに「-ba: unknown option」出ました。rpm -baを修正というのは・・・すいません私には理解できませんでした・・(恥)

ところでfcのsrpmファイルが↓
http://yum.sera.desuyo.net/3/SRPMS/
にあるのですが、こちらのsrpmファイルをRHEL上でrpmファイルを作ってインストールして利用ってのは可能なもんなんでしょうか。。

いろいろと質問攻めで申し訳ありません。。

スキルアップ/キャリアアップ(JOB@IT)