2007年12月21日金曜日

imagick(pecl)を使うために、再び

スズキです。

以前、imagickを使うための諸々を書きました。
http://suz-lab.blogspot.com/2007/12/imagickpecl.html

これは、実はCentOS4で試したもので、
"Fedora Core 5"(古い...)で同じ手順を試してみたら、
apacheで下記エラーが出力され、失敗してしまいました。

PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/local/lib/php/extensions/no-debug-non-zts-20060613/imagick.so'
- /usr/local/lib/php/extensions/no-debug-non-zts-20060613/imagick.so:
undefined symbol: XShmPutImage in Unknown on line 0

問題はX関係です。
XShmPutImageがImageMagickで使われていて、
PHPで使われていないのが、原因のようです。(多分...)

なので、PHPを"-lXext -lXt"をつけてmakeし直したら、
imagick、使えるようになりました。

具体的には下記手順となります。(PHPソースフォルダにて)
export LDFLAGS=" -lXext -lXt "
./configure ...
make
make install

この手の問題でXがからんでいると、面倒なんだよねー。
とりあえず、テスト環境にも導入できて、よかった、よかった。

--

http://suz-lab.blogspot.com/

0 コメント: