ID: 21049 Comment by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Bogus Bug Type: Compile Failure Operating System: Cobalt Linux PHP Version: 4.2.3 New Comment:
I guess I'm not sure why this is not a bug? It doesn't compile without making modifications to the distributed code. In our world we call that a bug. Anyway, I have read the docs. I am using 4.2.3 (not 4.3.0 because that's in pre-release and these are productions servers) which AFAIK does NOT include a 'bundled gd library.' Updating libgd on these servers to 1.8.4 would be a good idea, but that would require rebuilding a lot of other software on the server. Not something I can do right now. In any case, there is nothing in the docs that I could find that said I should use gd 1.8.4. At http://www.php.net/manual/en/install.configure.php#install.configure.options.graphics it says: --with-gd[=DIR] Include GD support (DIR is GD's install dir). Set DIR to shared to build as a dl, or shared,DIR to build as a dl and still specify DIR. (Which, BTW, took three readings for me to be able to understand.) This does not even SUGGEST that PHP will build it's own gd. It says that you should specify the install directory. Finally, if these simple fixes allow PHP to work with older versions of libgd, why not add them to the code base to support it? Previous Comments: ------------------------------------------------------------------------ [2002-12-16 11:21:17] [EMAIL PROTECTED] Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php If you must use GD 1.X use 1.8.4, PHP 4.3.0 already comes with bundled GD library that has been tested & works properly. ------------------------------------------------------------------------ [2002-12-16 11:13:47] [EMAIL PROTECTED] In PHP 4.2.3 (and some previous versions) the ext/gd/* files do not match older libgd installations (such as the 1.2 version that ships on RaQ4 servers. In particular, it includes a 'static' declaration of gdImageColorResolve when it should be 'extern' (see http://i4net.tv/marticle/get.php?action=getarticle&articleid=20 for another report of this bug) and it re-defined (incompatibly) the gdIOCtx object. To make the compile work I had to modify both php_gd.h and gd.c: *** ext/gd/php_gd.h.4.2.3 Mon Dec 16 18:02:43 2002 --- ext/gd/php_gd.h Mon Dec 16 18:03:41 2002 *************** *** 66,72 **** PHP_MSHUTDOWN_FUNCTION(gd); #ifndef HAVE_GDIMAGECOLORRESOLVE ! static int gdImageColorResolve(gdImagePtr, int, int, int); #endif PHP_FUNCTION(imagearc); PHP_FUNCTION(imagechar); --- 66,72 ---- PHP_MSHUTDOWN_FUNCTION(gd); #ifndef HAVE_GDIMAGECOLORRESOLVE ! extern int gdImageColorResolve(gdImagePtr, int, int, int); #endif PHP_FUNCTION(imagearc); PHP_FUNCTION(imagechar); *** ext/gd/php_gd.h.4.2.3 Mon Dec 16 18:02:43 2002 --- ext/gd/php_gd.h Mon Dec 16 18:03:41 2002 *************** *** 66,72 **** PHP_MSHUTDOWN_FUNCTION(gd); #ifndef HAVE_GDIMAGECOLORRESOLVE ! static int gdImageColorResolve(gdImagePtr, int, int, int); #endif PHP_FUNCTION(imagearc); PHP_FUNCTION(imagechar); --- 66,72 ---- PHP_MSHUTDOWN_FUNCTION(gd); #ifndef HAVE_GDIMAGECOLORRESOLVE ! extern int gdImageColorResolve(gdImagePtr, int, int, int); #endif PHP_FUNCTION(imagearc); PHP_FUNCTION(imagechar); ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=21049&edit=1