As emailed:
Hi there!
I was testing out your zeromq php module - when doing a compile:
/bin/sh /development/zeromq/php/php-zeromq/libtool --mode=compile gcc -I. -I/development/zeromq/php/php-zeromq -DPHP_ATOM_INC -I/development/zeromq/php/php-zeromq/include -I/development/zeromq/php/php-zeromq/main -I/development/zeromq/php/php-zeromq -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -I/usr/local/include -DHAVE_CONFIG_H -g -O2 -c /development/zeromq/php/php-zeromq/zeromq.c -o zeromq.lo
gcc -I. -I/development/zeromq/php/php-zeromq -DPHP_ATOM_INC -I/development/zeromq/php/php-zeromq/include -I/development/zeromq/php/php-zeromq/main -I/development/zeromq/php/php-zeromq -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -I/usr/local/include -DHAVE_CONFIG_H -g -O2 -c /development/zeromq/php/php-zeromq/zeromq.c -fPIC -DPIC -o .libs/zeromq.o
In file included from /development/zeromq/php/php-zeromq/zeromq.c:31:
/development/zeromq/php/php-zeromq/php_zeromq.h:50:28: warning: no newline at end of file
/development/zeromq/php/php-zeromq/zeromq.c: In function 'PHP_INI_BEGIN':
/development/zeromq/php/php-zeromq/zeromq.c:638: error: expected declaration specifiers before 'STD_PHP_INI_ENTRY'
/development/zeromq/php/php-zeromq/zeromq.c:649: error: expected '=', ',', ';', 'asm' or 'attribute' before '{' token
/development/zeromq/php/php-zeromq/zeromq.c:710: error: expected '=', ',', ';', 'asm' or 'attribute' before '{' token
/development/zeromq/php/php-zeromq/zeromq.c:716: error: expected '=', ',', ';', 'asm' or 'attribute' before '{' token
/development/zeromq/php/php-zeromq/zeromq.c:727: error: parameter 'zeromq_module_entry' is initialized
/development/zeromq/php/php-zeromq/zeromq.c:732: error: 'zm_startup_zeromq' undeclared (first use in this function)
/development/zeromq/php/php-zeromq/zeromq.c:732: error: (Each undeclared identifier is reported only once
/development/zeromq/php/php-zeromq/zeromq.c:732: error: for each function it appears in.)
/development/zeromq/php/php-zeromq/zeromq.c:733: error: 'zm_shutdown_zeromq' undeclared (first use in this function)
/development/zeromq/php/php-zeromq/zeromq.c:736: error: 'zm_info_zeromq' undeclared (first use in this function)
/development/zeromq/php/php-zeromq/zeromq.c:742: error: expected '=', ',', ';', 'asm' or 'attribute' before '{' token
/development/zeromq/php/php-zeromq/zeromq.c:743:31: warning: no newline at end of file
/development/zeromq/php/php-zeromq/zeromq.c:727: error: declaration for parameter 'zeromq_module_entry' but no such parameter
/development/zeromq/php/php-zeromq/zeromq.c:742: error: expected '{' at end of input
It seems to be choking on this:
PHP_INI_BEGIN()
STD_PHP_INI_ENTRY("zeromq.app_threads", "1", PHP_INI_ALL, OnUpdateLong, app_threads, zend_zeromq_globals, zeromq_globals)
STD_PHP_INI_ENTRY("zeromq.io_threads", "1", PHP_INI_ALL, OnUpdateLong, io_threads, zend_zeromq_globals, zeromq_globals)
PHP_INI_END()
and to fix - i added this include at the top:
include "php_ini.h"
and now it compiles perfect.
This is on CentOS 5.3 with php 5.2.6.
I don't know if I missed something, or you need to update the source -- regardless, I thought I'd let you know. Thanks for your work!