日本PHPユーザ会 掲示板

日本PHPユーザ会運営の掲示板です。※ただいまテスト運用中です。

日本PHPユーザ会 掲示板 » PHP 5 » php-5.2.8 のインストールエラー

php-5.2.8 のインストールエラー

ページ: 1

投稿者 投稿
会員
登録者: 7 2009
返信数: 2
以下の環境で、php5.2.6 からphp5.2.8 へバージョンアップしたのですが、Webサーバ起動時に、Webサーバの標準出力にlibphp5.so」のSEGV が出力されています。

OS:Soralis 9
Webサーバ:Sun Java System Web Server 6.0 sp10

<インストール手順>
配置:
/usr/local/src/php-5.2.8 にソースを展開
(ちなみに、/usr/local/src/php-5.2.4 に前のバージョンのソースあり)

初期化:
> cd /usr/local/src/php-5.2.8
> ./configure --with-libxml-dir=/usr/local \
--with-pgsql \
--with-nsapi=/usr/SUNWwbsvr \
--enable-mbstring \
--enable-mbregex \
--enable-libgcc

PHPのインストール:
> make
> make install

<サーバベンダによるcore解析結果>
--------------------------------------------------------
t@1 (l@1) terminated by signal SEGV (Segmentation Fault)
0xfcb96618: ucp_gentype+0x06a8: bleu,a,pt %xcc,zend_call_function+0x340 ! 0xfcaf0be4
Current function is php_hash_environment
dbx: warning: can't find file "/usr/local/src/php-5.2.4/main/php_variables.c"
dbx: warning: see `help finding-files'
dbx: warning: using the alternate init file: dbxrc
(dbx) where -l
current thread: t@1
[1] 0xfcb96618(0xffbff2d0, 0x20e1b8, 0x18c106, 0xfcb96500, 0xfce0e4b0, 0xabf178),
at 0xfcb96618
=>[2] libphp5.so:php_hash_environment(tsrm_ls = 0x18c0f8), line 730 in "php_variables.c"
[3] libphp5.so:php_hash_environment(tsrm_ls = 0x18c0d8), line 736 in "php_variables.c"
[4] libphp5.so:php_auto_globals_create_server(name = 0xa79fc0 "", name_len = 0,
tsrm_ls = 0xece5c), line 760 in "php_variables.c"
[5] 0xfcb964b8(0x0, 0xff000000, 0xfcb96440, 0x85dc, 0xabf178, 0x20e158), at 0xfcb964b8
[6] libphp5.so:php_auto_globals_create_server(name = 0xffffffff "<bad address
0xffffffff>", name_len = 28U, tsrm_ls = 0x1), line 772 in "php_variables.c"
[7] libphp5.so:sapi_activate(tsrm_ls = 0xa79fc0), line 183 in "SAPI.c"
[8] libphp5.so:sapi_activate(tsrm_ls = (nil)), line 175 in "SAPI.c"
[9] 0xfcb97434(0x0, 0x6, 0xff2c12d4, 0xffbff7ec, 0xff175000, 0xff175264), at 0xfcb97434
[10] libns-httpd40.so:INTdaemon_dorestart(0x1, 0xff2c12d4, 0xff2ee974, 0x2d2c, 0x2800,
0x2be4), at 0xff1be4e8
[11] libns-httpd40.so:WebServer::Run(0x73370, 0x296c, 0xff2ee984,0xff2ee9a4, 0xff2ee99c,
0xff2c1156), at 0xff2461d0
[12] webservd:main(0x7, 0xffbff8cc, 0xffbff8ec, 0x25400, 0x0, 0x0),at 0x10e64
(dbx) frame 6
Current function is php_auto_globals_create_server
dbx: warning: can't find file "/usr/local/src/php-5.2.4/main/php_variables.c"
--------------------------------------------------------

php-5.2.4 をなぜ指しているのか、心当たりがないのですが...


以上、お分かりの方がいらっしゃいましたらよろしくお願いします。
管理者
登録者: 10 2005
返信数: 38
こういう経緯を踏んでいる可能性はありますか?

(1) 以前PHP 5.2.4をインストールしており,そのときに共有ライブラリーとしてビルド&インストールを行っていたものがある
(2) 共有ライブラリーの指定はphp.iniのextension=foo.soのように行っていた,あるいはPHPスクリプト側でdl('foo.so');のように行っている
(3) 少なくともPHP 5.2.8ではそれら共有ライブラリーのビルド&インストールは行っていない(つまり5.2.4の残骸がある).実際にconfigureを見る限りは行っていない
(4) (2)の状態が相変わらず残っている
« 最終編集者 ELF 日時 2009 年 7 月 26 日(日) 16:02. »
会員
登録者: 7 2009
返信数: 2
reply ありがとうございます。

>(1)
5.2.4 はインストールされています。
過去の手順書によると、ビルド&インストールの手順は以下のようなものでした。
=========================
libxml2のインストール(=>php5.2.4インストール時に必要と記述あり)

> tar xvf libxml2-2.6.30.tar
> cd libxml2-2.6.30
> ./configure
> make
> make install

PHPのインストール
> tar xvf php-5.2.4.tar
> cd php-5.2.4
> ./configure --with-libxml-dir=/usr/local \
--with-pgsql \
--with-nsapi=/usr/SUNWwbsvr \
--enable-mbstring \
--enable-mbregex \
--enable-libgcc
> make
> make install
=========================

>(2)
php.ini を確認しましたが、extension=XXXXX.so のような指定はありませんでした。
(スクリプト側は不明です)

>(3)
共有ライブラリーのビルド&インストールは行っていません。

>(4)
(2)の状態には変更ないと思っています。

ちなみに、同じソースを利用して、手順確認としてIntel版Solaris上でも事前にビルド&インストールを行ったのですが、こちらはWebサーバ起動時にエラーが発生しませんでした。
(こちらの環境も、5.2.4 は同じ手順で過去インストールされています)

ページ: 1

日本PHPユーザ会 掲示板 » PHP 5 » php-5.2.8 のインストールエラー

日本PHPユーザ会 掲示板 は UseBB 1 フォーラムソフトウェア を使用しています