Do You PHP はてブロ

Do You PHPはてなからはてブロに移動しました

make testでWarningが出る

第1回PHP拡張勉強会でも話題になりましたが。。。


このときphp.iniのextension_dirディレクティブの値が“modules/”(カレントディレクトリにあるmodulesディレクトリ)で上書きされるので,php.iniのextensionディレクティブで拡張モジュールを読み込むようにしていると,モジュールが読み込めなかった旨のエラーが出力されてテストが失敗します。make testの際にはphp.iniのextensionディレクティブをすべてコメントアウトしておいてください。

別の回避方法としては、(あまり行儀が良くないですが)phpizeで作成されるMakefile.global、もしくは、configureで作成されるMakefileで、run-tests.phpにオプション「-n」を渡してやっても良さそうです。Makefile.globalの場合は以下の通り。

$ cd helloworld
$ phpize
$ perl -i -p -s -e "s/run-tests\.php/run-tests\.php -n/g" Makefile.global
$ ./configure
      :

最初から「-n」付けてくれれば良いんだけどなぁ。

追記(2008/01/23 03:45)

[PHPのインストールディレクトリ]/build/Makefile.globalがオリジナルのようで、そこからコピーされるっぽいです。なので、PHPをインストールしたあとで

$ sudo perl -i -p -s -e "s/run-tests\.php/run-tests\.php -n/g" /path/to/php/build/Makefile.global

とかやっておくと、若干幸せになれそうです。