Bug #60108 [Opn->Asn]: GD cannot be compiled with system libgd
| From: | pajoye@php.net | Date: | Wed, 16 Nov 2011 10:07:58 +0000 |
| Subject: | Bug #60108 [Opn->Asn]: GD cannot be compiled with system libgd | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-165221@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=60108&edit=1
ID: 60108
Updated by: pajoye@php.net
Reported by: ondrej@php.net
Summary: GD cannot be compiled with system libgd
-Status: Open
+Status: Assigned
Type: Bug
Package: GD related
Operating System: Linux
PHP Version: 5.4.0beta2
-Assigned To:
+Assigned To: pajoye
Block user comment: N
Private report: N
Previous Comments:
------------------------------------------------------------------------
[2011-11-16 08:15:06] brad at njoe dot com
Confirmed the same build errors against the latest snapshot (php5.4-
2011111160530) with a system-wide libgd installed (version 2.0.36 versus the
bundled 2.0.35).
I also noted that the standard libgd version 2.0.35 doesn't include the 'void
*data' member in the gdIOCtx struct. Modifying my /usr/include/gd_io.h to
include this struct member seems to have also fixed(?) the build error, but that
made me wonder...
... Why is the "bundled" libgd more of a "bundled+customized-for-PHP" library?
It would seem that the 'void *data' member was introduced by the PHP dev team,
unless I'm mistaken. Is this member's data important, and, if so, why is the
"bundled" library modified to contain it (meaning that you really don't have an
option between using the "bundled" library or your own system-wide version).
------------------------------------------------------------------------
[2011-10-21 12:13:35] ondrej@php.net
Description:
------------
When compiled with system-wide (not embedded) libgd library the compilation fails with:
In file included from /tmp/buildd/php5-5.4.0~beta2/ext/gd/gd.c:103:0:
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c: In function '_php_image_stream_putc':
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c:51:41: error: 'struct gdIOCtx' has no member
named 'data'
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c: In function '_php_image_stream_putbuf':
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c:58:41: error: 'struct gdIOCtx' has no member
named 'data'
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c: In function '_php_image_stream_ctxfree':
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c:67:8: error: 'struct gdIOCtx' has no member
named 'data'
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c:68:3: error: 'struct gdIOCtx' has no member
named 'data'
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c:69:6: error: 'struct gdIOCtx' has no member
named 'data'
In file included from /tmp/buildd/php5-5.4.0~beta2/ext/gd/gd.c:103:0:
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c: In function '_php_image_output_ctx':
/tmp/buildd/php5-5.4.0~beta2/ext/gd/gd_ctx.c:153:6: error: 'gdIOCtx' has no member named
'data'
You need to wrap the _stream_ stuff inside the #ifdef HAVE_GD_BUNDLED
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=60108&edit=1