PHPとAmazon Web Serice(AWS/ECS)を使ってちょっと遊んでいる流れで、この自宅サーバにPHP5をインストールしようとしたのだけど、いろいろ手こずったのでメモ。
★PHP4はあらかじめアンインストールする
ここのサイトに書いてある手順で基本的には大丈夫。
★GentooでPHP5はマスクされてる
ACCEPT_KEYWORDS=”~x86″が必要。
apache2もマスク状態のバージョンが依存関係にあり、それをインストールするとhttpd.confの格納パスが変わったり、内容もcommonapache2.confを参照しなくなったり、設定ファイル関係に変更が入ってしまうので移行には注意。
ちなみに特定のパッケージのみにACCEPT_KEYWORDSする場合は、/etc/portage/package.keywordsに
dev-php/php ~x86
dev-php/mod_php ~x86
と書いておくとPHPとmod_phpにのみ’~x86′が常に適用されて、いちいちemergeの時に指定する必要はない。
★マスクを外してemergeするとPHP5.1.0_betaが入りそうになる
PHPに’~x86′指定すると、emergeでPHP5.1系が入ってしまう。
さすがに5.1系は入れるには時期が早すぎるので、パッケージのバージョン指定(’='を付ける)をすることで回避
emerge =php-5.0.4-r1
★PHP5.0.4はインストールしてもPEARがインストールされない
HTML_QuickForm、Smartyを使いたいので、PEARは必須だけどどうも5.0.4だけインストールされない不具合があるらしい。
そこで、http://go-pear.orgにアクセスして、表示されるPHPスクリプトをgo-pear.phpで保存し、それを実行してpearコマンドをインストール。
★デフォルトのインストール状態ではsimplexml関数が使えない
普通はcomfigureスクリプトのデフォルトでsimplexmlが有効(–enable-simplexmlオプション)になるらしいけど、emergeを使うと有効にならない。USEフラグでxml2やsimplexmlを追加してもダメだったので、
EXTRA_ECONF=”–enable-simplexml” emerge =php-5.0.4-r1
として、強制的にconfigureに渡すようにした。
あとは/etc/conf.d/apache2 のAPACHE2_OPTSの’-D PHP4′を’-D PHP5′に修正すればとりあえずテストした範囲ではOKでした。
関連する記事:
- Gentoo LinuxでPHP5とmysqliを使う PHP 5.0.4、MySQL 4.1、Apache2の環境はまだ不安定なんだろうか。 Gentoo Linuxの場合、PHP5.0.4、MySQL 4.1にはまだマスクがかかっていて標準ではインストールされないんだけど、MySQL4.1系なんてリリースされてから随分とたっているのに、と思っているとこういう理由らしい。 ・PHPでMySQL4.1系の機能を使うにはmysqli拡張が必要 ・しかしP......
- PHP4と5の違い PHP5.0がちょっと前にリリースされていて、「PHP4と比べてけっこう変わっている」というのはよく見かけるけれど、具体的にどこが変わったのか、きちんと解説しているサイトや雑誌って全くと言っていいほど見かけないんですが…。 とりあえずMYCOM PCのサイトに記事があったけれど、なんとなく表面をさらっと流したような感じだし、変更点ってこれくらいなんだろうか?やっぱり、本家サイトにいかないといけない......
- Subversionの次版はGitのように分散リポジトリに対応? Subversion 1.7 to enable Git-like features Subversionの次のメジャーバージョンである1.7について少し触れてある。 ちゃんと文章を読めたわけではないけど、分散リポジトリやオフラインコミットのようなGitを意識した機能が追加されるようだ。 既に使用者が多いSVNに分散の概念が入ってくると、開発スタイルも変化するかもね。新しくMercurialやGi......
- Webでソースコードを色分け表示するためのライブラリ すぐに使うことは無いと思うけど、将来のネタとしてメモ。 PHP Text_Highlighter Perl Text::VimColor ......
- ffmpegをMinGWでビルド(Windowsで使えるdll,libも作る) Windows環境でffmpegのAPIをC言語から叩きたい。ということで、ffmpegをソースからビルドすることにした。 以下のサイトを参考にしながら、手始めに外部のライブラリを取り込まずに最小構成でのビルドで。 FFmpeg APIで、さまざまな動画を操る - 前編:CodeZine FFmpeg APIで、さまざまな動画を操る - 前編:CodeZine...
- PHP5とMySQL4.1とLIMIT 会社と自宅とでMySQL+PHPの環境で遊んでいたりするけれど、ちょっとした環境の違いでハマってしまったのでメモ。 PHP5.0.4+MySQL4.1.12ではプリペアードステートメントで、SELECT文のLIMITのパラメータに'?'を使うとパースエラーでmysqli_prepare()がFALSEになる。(ただしmysql_error()などでエラーコードを取っても0(正常)が返るようだ) こ......
- 新しい: 月曜日は久しぶりの代休
- 古い: 20代で始める「夢設計図」
コメント:0
トラックバック:0
- この記事のトラックバック URL
- http://www.swingingblue.net/mt/archives/000470.html/trackback
- トラックバックの送信元リスト
- GentooでPHP5を使う - きままな日記帳 より
