[PHP-users 23004]Solaris8,9(SPARC64bit)+Oracle9i(64bit)+PHP5.0.1が動かない

Keisuke Yasui yasuik @ soj.sega.co.jp
2004年 8月 18日 (水) 11:00:28 JST


はじめまして。

以前からですがSolaris64ビット版のOracle9iをインストールしている環境で
configure一発でPHPがコンパイルできません。
原因はOracleの64ビット版をインストールすると32ビット用のライブラリが
ORACLE_HOME/lib32にインストールされるためです。
(configureはlib32をみていない)
PHP4.3.xの時は生成されたMakefileのORACLE_HOME/libを
ORACLE_HOME/lib32と書き換えてmakeしていました。(うまく動きます)
PHP5.0.0も同じ手順でコンパイルしてみましたが
OCI8関数を使用するとApache2(workerモデル)がSegmentation faultで
落ちてしまいます。
configureが不完全なのかと(実際Oracle9.2と判定していない)
configureのOCI8_DIR/libをOCI8_DIR/lib32として再コンフィグして
makeコンパイルしてみましたが状態は変わらず落ちてしまいます。
落ちるときのApacheのエラーログは以下のようになっています。

[client xxx.xxx.xxx.xxx] PHP Warning:  Unknown: _oci_close_session OCIHandleAlloc OCI_HTYPE_SVCCTX: OCI_INVALID_HANDLE in Unknown on line 0
[Tue Aug 17 00:00:00 2004] [notice] child pid 3239 exit signal Segmentation fault (11)
おそらくハンドルを初期化する段階ですでにうまくいっていないと思われます。

PHP5.0.0のときは不安定ながらOracleと接続できたりしていましたが
PHP5.0.1では必ず落ちるようになってしまいました。

Apache2をpreforkモデルにしてみたりしましたが状況は変わりません。

パッチなどでこの問題を回避している方はいらっしゃるのでしょうか?


PHP-users メーリングリストの案内