PHP 6.0 snap 200812292330 compile error with mysqlnd
| From: | HouYu Li Karajan | Date: | Mon, 29 Dec 2008 22:04:33 +0000 |
| Subject: | PHP 6.0 snap 200812292330 compile error with mysqlnd | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-42404@lists.php.net to get a copy of this message | ||
My system is CentOS 5.2. I use the following configure command:
./configure --prefix=/usr/local/php6.0-dev --with-config-file-path=/usr/local/php6.0-dev/etc --with-config-file-scan-dir=/usr/local/php6.0-dev/etc/php.d --with-openssl --with-kerberos --with-zlib --with-mysql --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-mysqlnd-threading
The configure command runs OK. When I doing "make", I have the following error:
/root/src/build/php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c: In function 'mysqlnd_fetch_row_async_buffered':
/root/src/build/php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c:1396: error: 'i' undeclared (first use in this function)
/root/src/build/php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c:1396: error: (Each undeclared identifier is reported only once
/root/src/build/php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c:1396: error: for each function it appears in.)
/root/src/build/php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c: In function 'mysqlnd_background_store_result_fetch_data':
/root/src/build/php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c:1465: error: 'STORE_RESULT_PREALLOCATED_SET' undeclared (first use in this function)
/root/src/build/php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c: In function 'php_mysqlnd_res_background_store_result_pub':
/root/src/build/php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c:1609: error: 'STORE_RESULT_PREALLOCATED_SET' undeclared (first use in this function)
Some declaration of variables missing. Following is the patch I made. Hope it's helpful.
--- php6.0-200812292330-orig/ext/mysqlnd/mysqlnd_result.c 2008-11-06 06:30:47.000000000 -0500 +++ php6.0-200812292330/ext/mysqlnd/mysqlnd_result.c 2008-12-29 15:46:13.000000000 -0500@@ -1180,6 +1180,7 @@ #define STORE_RESULT_PREALLOCATED_SET_IF_NOT_EMPTY 2 +#define STORE_RESULT_PREALLOCATED_SET 32 /* {{{ mysqlnd_store_result_fetch_data */ enum_func_status @@ -1361,6 +1362,7 @@
/* At the point we are still under LOCK */
if (set->data_cursor && (set->data_cursor - set->data) < (set->row_count)) {
+ unsigned int i;
uint64_t row_num = set->data_cursor - set->data;
zval **current_row = *set->data_cursor++;
set->initialized_rows++;
@@ -1370,7 +1372,6 @@
/* If there was no decoding in background, we have to decode here */
if (set->decode_in_foreground == TRUE) {
MYSQLND_MEMORY_POOL_CHUNK *current_buffer = set->row_buffers[row_num];
- unsigned int i;
result->m.row_decoder(current_buffer,
current_row,
result->meta->field_count,
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.