[PHP-users 23953] Re: 4.3.10がWindowsでビルドできない
"佐野 大輔"
d-sano @ cybozu.co.jp
2004年 12月 21日 (火) 18:24:15 JST
自己レスです。
> #define zend_sprintf sprintf
>
> としてあったので、
> このマクロ定義をはずすととりあえずビルドできたのですが。。
すみません。はずしたら通りません。
#define zend_sprintf _zend_sprintf
とリネームしました。
佐野 大輔 wrote:
> 佐野と申します。
>
> 4.3.10をWindowsでビルドしようとしたのですが、
>
> コンパイル時に、
>
> C:\cygwin\home\Administrator\cvs\work\azalea_win\php-4.3.10\Zend\zend_sprintf.c(30) : warning C4273: 'sprintf' : DLL リンケージが矛盾しています。DLL にエクスポートされていると仮定します。
>
> となり、リンク時に
>
> MSVCRT.lib(MSVCRT.dll) : error LNK2005: _sprintf はすでに ZendTS.lib(zend_sprintf.obj) で定義されています
>
> となって、失敗します。
>
> ソースを見ると、Zend/zend_sprintf.cで、
>
> int zend_sprintf(char *buffer, const char *format, ...)
> {
> ....
> }
>
> と実装されてるにも関わらず、
> Zend/zend_config.w32.hでは、
>
> #define zend_sprintf sprintf
>
> としてあったので、
> このマクロ定義をはずすととりあえずビルドできたのですが。。
>
> このような対処で良いのでしょうか?
> どうぞ、ご助言よろしくお願いいたします。
> _______________________________________________
> PHP-users mailing list PHP-users @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3
**************************************************
サイボウズ株式会社
フレームワークプロジェクト
佐野大輔
E-mail:d-sano @ cybozu.co.jp
Tel:03-5805-9234
Fax:03-5805-9036
**************************************************
PHP-users メーリングリストの案内