Edit report at https://bugs.php.net/bug.php?id=55224&edit=1

 ID:                 55224
 Comment by:         oniuda at oni dot gr dot jp
 Reported by:        manuel at bouza dot ch
 Summary:            make fails if configured with --with-gd=DIR
 Status:             Open
 Type:               Bug
 Package:            GD related
 Operating System:   MAC OSX 10.6.8
 PHP Version:        5.4SVN-2011-07-18 (SVN)
 Block user comment: N
 Private report:     N

 New Comment:

On FreeBSD 9.0-STABLE,I tried to make php-5.4.3 --with-dg=/usr/local.
I installed gd from /usr/ports/graphics/gd (gd-2.0.35).

---
In file included from /usr/local/src/php-5.4.3/ext/gd/gd.c:103:
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c: In function '_php_image_stream_putc':
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:51: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c: In function 
'_php_image_stream_putbuf':
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:58: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c: In function 
'_php_image_stream_ctxfree':
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:67: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:68: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:69: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c: In function '_php_image_output_ctx':
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:153: error: 'gdIOCtx' has no member 
named 'data'
gmake: *** [ext/gd/gd.lo] Error 1
---
I made php-5.3.13 with same configure options.So I investigated the cause.
In php-5.4.3/ext/gd/libgd/gd_io.h 
typedef struct gdIOCtx {
        int     (*getC)(struct gdIOCtx*);
        int     (*getBuf)(struct gdIOCtx*, void*, int);

        void    (*putC)(struct gdIOCtx*, int);
        int     (*putBuf)(struct gdIOCtx*, const void*, int);

        int     (*seek)(struct gdIOCtx*, const int);
        long    (*tell)(struct gdIOCtx*);

        void    (*gd_free)(struct gdIOCtx*);

        void    *data;
} gdIOCtx;
But in /usr/local/include/gd_io.h
typedef struct gdIOCtx
{
  int (*getC) (struct gdIOCtx *);
  int (*getBuf) (struct gdIOCtx *, void *, int);

  void (*putC) (struct gdIOCtx *, int);
  int (*putBuf) (struct gdIOCtx *, const void *, int);

  /* seek must return 1 on SUCCESS, 0 on FAILURE. Unlike fseek! */
  int (*seek) (struct gdIOCtx *, const int);

  long (*tell) (struct gdIOCtx *);

  void (*gd_free) (struct gdIOCtx *);

}
gdIOCtx;
These isn't void    *data;.In some gd versions (ex:gd-2.0.36RC,gd-2.0.34)
there ins't void    *data;.

I think that php-5.4.X was required extended gd library.
Shuold we configure --with-gd not --with-gd=DIR?


Previous Comments:
------------------------------------------------------------------------
[2012-05-13 05:24:08] elifan2007 at ya dot ru

freebsd 9.0
The same with any php-5.4.x for now (--with-gd=/usr/local).
gd-2.0.35

Wasn't corrected in php-5.4.3, so using 5.3.13 instead, thanx

/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c: In function '_php_image_stream_putc':
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:51: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c: In function 
'_php_image_stream_putbuf':
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:58: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c: In function 
'_php_image_stream_ctxfree':
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:67: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:68: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:69: error: 'struct gdIOCtx' has no 
member named 'data'
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c: In function '_php_image_output_ctx':
/usr/local/src/php-5.4.3/ext/gd/gd_ctx.c:153: error: 'gdIOCtx' has no member 
named 'data'
*** Error code 1

Stop in /home/src/php-5.4.3.

------------------------------------------------------------------------
[2012-04-11 22:42:10] nicek at hotmail dot com

I'm having the same issue with Solaris 10 U9 09/10. I haven't found a 
work-around either.

php-5.4.0
gd-2.0.35

Nic

./configure --prefix=/usr/local-build --with-apxs2=/usr/local-build/bin/apxs 
--enable-libgcc --with-libxml-dir=/usr/local-build 
--with-openssl=/usr/local-build --with-zlib=/usr/local-build 
--with-bz2=/usr/lib --enable-calendar --with-curl=/usr/local-build 
--enable-exif -enable-ftp --with-mysql=/usr/local-build 
--with-mysqli=/usr/local-build/bin/mysql_config 
--with-pdo-mysql=/usr/local-build --enable-shmop --enable-sockets 
--enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-zip 
--with-gd=/usr/local-build --with-libxml-dir=/usr/local-build 
--with-jpeg-dir=/usr/local-build --with-png-dir=/usr/local-build 
--with-zlib-dir=/usr/local-build --with-xpm-dir=/usr/local-build 
--with-freetype-dir=/usr/local-build

/bin/bash /home/builder/packages/php-5.4.0/libtool --silent --preserve-dup-deps 
--mode=compile gcc -I/usr/local-build/include -Iext/gd/ 
-I/home/builder/packages/php-5.4.0/ext/gd/ -DPHP_ATOM_INC 
-I/home/builder/packages/php-5.4.0/include 
-I/home/builder/packages/php-5.4.0/main -I/home/builder/packages/php-5.4.0 
-I/home/builder/packages/php-5.4.0/ext/date/lib 
-I/home/builder/packages/php-5.4.0/ext/ereg/regex 
-I/usr/local-build/include/libxml2 -I/usr/local-build/include 
-I/usr/local-build/include/freetype2 
-I/home/builder/packages/php-5.4.0/ext/sqlite3/libsqlite 
-I/home/builder/packages/php-5.4.0/TSRM -I/home/builder/packages/php-5.4.0/Zend 
 -D_POSIX_PTHREAD_SEMANTICS  -I/usr/include -g -O2  -c 
/home/builder/packages/php-5.4.0/ext/gd/gd.c -o ext/gd/gd.lo
In file included from /home/builder/packages/php-5.4.0/ext/gd/gd.c:103:
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c: In function 
`_php_image_stream_putc':
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c:51: error: structure has no 
member named `data'
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c: In function 
`_php_image_stream_putbuf':
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c:58: error: structure has no 
member named `data'
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c: In function 
`_php_image_stream_ctxfree':
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c:67: error: structure has no 
member named `data'
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c:68: error: structure has no 
member named `data'
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c:69: error: structure has no 
member named `data'
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c: In function 
`_php_image_output_ctx':
/home/builder/packages/php-5.4.0/ext/gd/gd_ctx.c:153: error: structure has no 
member named `data'
*** Error code 1
make: Fatal error: Command failed for target `ext/gd/gd.lo'

------------------------------------------------------------------------
[2012-04-11 13:32:01] hengjie at gmail dot com

This also happens on CentOS5 when I'm using --with-gd=/usr flag. /usr should be 
where the native GD library is installed.

This information is to expand the scope of this problem.

------------------------------------------------------------------------
[2012-03-02 10:00:08] cornelius dot howl at gmail dot com

I think the problem is caused from:

gd.c:  typedef FILE gdIOCtx;

I commented this line, and compiler works. :-)

------------------------------------------------------------------------
[2012-03-02 09:54:09] cornelius dot howl at gmail dot com

Same here. I got this in clang compiler:  (PHP5.4 on Mac OS 10.8)

GD version: 

#define GD_VERSION_STRING "2.0.35"


ext/gd//gd_ctx.c:51:43: error: no member named 'data' in 'struct gdIOCtx'
        php_stream * stream = (php_stream *)ctx->data;
                                            ~~~  ^
ext/gd//gd_ctx.c:58:43: error: no member named 'data' in 'struct gdIOCtx'
        php_stream * stream = (php_stream *)ctx->data;
                                            ~~~  ^
ext/gd//gd_ctx.c:67:10: error: no member named 'data' in 'struct gdIOCtx'
        if(ctx->data) {
           ~~~  ^
ext/gd//gd_ctx.c:68:40: error: no member named 'data' in 'struct gdIOCtx'
                php_stream_close((php_stream *) ctx->data);
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/Users/c9s/.phpbrew/build/php-5.4.0/main/php_streams.h:287:52: note: expanded 
from:
#define php_stream_close(stream)        _php_stream_free((stream), 
PHP_STREAM_FREE_CLOSE TSRMLS_CC)
                                                          ^
In file included from /Users/c9s/.phpbrew/build/php-5.4.0/ext/gd/gd.c:103:
ext/gd//gd_ctx.c:69:8: error: no member named 'data' in 'struct gdIOCtx'
                ctx->data = NULL;
                ~~~  ^
ext/gd//gd_ctx.c:153:8: error: no member named 'data' in 'struct gdIOCtx'
                ctx->data = (void *)stream;
                ~~~  ^

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=55224


-- 
Edit this bug report at https://bugs.php.net/bug.php?id=55224&edit=1

Reply via email to