首页 > 代码库 > 编译PHP的错误

编译PHP的错误

错误信息:

  [plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c: In function ‘_php_image_stream_putc‘: 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c:51: error: ‘struct gdIOCtx‘ has no member named ‘data‘ 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c: In function ‘_php_image_stream_putbuf‘: 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c:58: error: ‘struct gdIOCtx‘ has no member named ‘data‘ 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c: In function ‘_php_image_stream_ctxfree‘: 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c:67: error: ‘struct gdIOCtx‘ has no member named ‘data‘ 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c:68: error: ‘struct gdIOCtx‘ has no member named ‘data‘ 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c:69: error: ‘struct gdIOCtx‘ has no member named ‘data‘ 
  In file included from /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd.c:103: 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c: In function ‘_php_image_output_ctx‘: 
  /root/rpmbuild/BUILD/php-5.4.36/ext/gd/gd_ctx.c:153: error: ‘gdIOCtx‘ has no member named ‘data‘ 
  make: *** [ext/gd/gd.lo] Error 1 
  make: *** Waiting for unfinished jobs.... 

解决方案:编辑GD 安装的头文件 gd_io.h  ,用 find 命令。

     #define Putchar gdPutchar
    #endif

   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 *);

        void (*data);
      }
     gdIOCtx;

                            添加 void (*data); 可通过编译

编译PHP的错误