[PHP-users 11615] Re: gd のコンパイル

桜井 厚 php-users@php.gr.jp
Wed, 20 Nov 2002 10:41:57 +0900


On Wed, 20 Nov 2002 09:56:30 +0900
fumitaka miyazato <fumi@ryucom.ne.jp> wrote:

>   こちらにはありませんでした。
>   Solaris には元々ないようです。

そうでしょうね。

> >> ところでそのあたり(gdIOCtx)でbugがあるようで、
> >> コンパイルに失敗することがあります。
>
>   今回のエラーとはあまり関係ないみたいです。

そう思います。今回のエラーを抜けるとぶつかるかも....

>   gd パッケージ内の gd_io.h では gdIOCtx は struct なのですが,
>   PHP の gd.c では
> 
>     typedef FILE gdIOCtx;
> 
>   となってます。ここいらに大きな問題があるようですが。
>   これコメントアウトすればいいのでしょうか…。

その前後はifdefになっていますね。こちらの場合、流れとしてはconfigureスク
リプトで、

 HAVE_LIBGD15

が定義され、ext/gd/gd.cの中でUSE_GD_IOCTXが定義されます。で、その下の

 #ifdef USE_GD_IOCTX
 #include "gd_ctx.c"

によってgd_ctx.cがincludeされ、その下の

 typedef FILE gdIOCtx;

は実行されないようです。そちらではconfigureに失敗しているのかもしれませ
ん。configureの最後のほうで、

 rm -fr confdefs* $ac_clean_files

によって証拠が消されているのでこれをコメントアウトしてconfdefs.hを見たら
何かわかるかもしれませんね。

-- 
桜井 厚 <sakurai@penguin-club.org>