[PHP-users 20250] Re: pdflib

ICHIRO ichiro @ wvn.gr.jp
2004年 2月 4日 (水) 15:10:04 JST


端折って書きます。(でも長い・・・)

■前提:
・libpdf_php.soはPHPの動的なモジュールです。
・php,pdflibをソースからビルドした場合、pdflibは静的に
 phpに取り込まれた状態でphpになります。
 (そういうやり方をしたのだと思います。)
・php.iniの、extension=xxxx.soというのは
 動的にモジュールを組み込む際に記入します。
・php.iniの、extension_dir=というのはその動的なモジュール
 をどのディレクトリに置くのかを指定します。
■[20156]の質問
「./lbpdf_php.soが見つからない」
php.iniに
extension=libpdf_php.so
extension_dir=./
なので./にあると指定されたlibpdf_php.soを探しにいったら
無かったというメッセージ
■[20159]の質問
「Warningが出る」
静的にphpにpdflibを取り込んでいる(libpdf_php.soは不要)
のに
php.iniに
extension=libpdf_php.so
extension_dir=/usr/local/pdflib/bind/php/php-4.2.1/
なので/usr/local/pdflib/bind/php/php-4.2.1/にlibpdf_php.soを
探しにいったらあったので動的に取り込んだら
【すでにpdf関数は取り込まれていた】のでpdf関数一つ一つに対して
動的に取り込もうとしたら同じ(二重の)名前が登録済みで取り込めないとメッセージを出した。
「extension=xxxxに変えたら最初と同じメッセージになった」
なぜそうしたのか理解できませんでしたが
前期の説明と同じ理由で出たメッセージです。
■[20229]の報告
php.iniの
extension=libpdf_php.soをコメントアウト
pdflibを静的に取り込んだphpが正常に動作するようになった。
※extension_dirは利用していないのでどのディレクトリを指しても一緒のはずです。(パーミッションとか言わないでぇ)
■[20236]の報告
上記の確認をしました。

> Webからの利用にあたっては、/usr/local/apache/libexec にlibpdf_php.soのリンクが
php.iniでextension=libpdf_php.soのエラーが
表示されない設定になっているだけで、動的に読み込めなくても
静的にphpになっているので動作上支障なかっただけです。

> [変更後]
> extension_dir = ./
> ;extension = libpdf_php.so
> extension_dir = "/usr/local/pdflib/bind/php/php-4.2.1/"

試したところ、extension_dirが複数書いてある場合、最後の
ものが優先されるようです。

長くなりましたが後々検索される場合のためにまとめました。
間違いがある場合等、補足・訂正以外の返信は特に不要です。

ふぅ、1時間半かかった。長文すみません。

山崎 拝



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