[PHP-users 3755] Re: --with-pgsql したのに、pg_connect() がundefinedなんて

php-users@php.gr.jp php-users@php.gr.jp
Wed, 21 Nov 2001 16:05:55 +0900


なかむら@東大心理です。

どこにいつ作った php が転がっているのか
わからなくなっているんじゃないかと。
php は apache の DSO版とコマンドライン版の両方を用意しているんですね?

At Wed, 21 Nov 2001 15:28:48 +0900,
Anjin Miura wrote:

> phpは./configure前に
> #make distclean
> #rm configure
> ./buildconf
> して、そのあとに./configureしました。
> php.iniもphp.ini-distからコピーしました。
> 
> で、Apache起動後、
> 
> php -m で、
[snip]

これってコマンドライン版の方ですよね。
こっちはちゃんと --with-pgsql が効いてる、と。

> また、Apacheの方なのですが、
> 
> #/usr/local/apache/bin/httpd -l
> としましたが、

DSO でつくってるならここでは php は出てこないんじゃないですか?

> 以下は、phpinfo()で表示される、
> Apacheのところです。
> 
> よくみると、Configure Command のところに、
> あんなにがんばって -with-pgsql=/usr/local/pgsqlと
> 打ったにもかかわらず、表示されておりません。
> 
> おかしい。これはなぜなのでしょう。

--with-pgsql として実行した configure を反映していない
libphp4.so (DSO版php) が動いているんでしょうね。
以前つくったやつ、もしくはデフォルトで入ってた RPM とかが
生き残ってるんじゃないですか?

apache のツリーがどこにあるのかわかりませんが
apache/libexec/libphp4.so のタイムスタンプを確認しましょう。

あとは configure や make のときのログをとって
ヘンなことになってないか見てみるとか。
私は script をよく使いますが、
make >& log とかしてもいいですね。
# リダイレクトはお使いのシェルにあわせてください。


● なかむらゆうすけ @ 東京大学大学院人文社会系研究科 (心理学)
● Yuusuke NAKAMURA at Univ of Tokyo, Psychology, master course
● waasuke@e-mail.ne.jphttp://www.kaisei.org/person/waasuke/