|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2004-04-26 15:42 UTC] ralf at kuerbis dot org
Description: ------------ Hi! Trying to compile the PHP5 RC2 version on Solaris 9, the compile run breaks with following error: [...] /opt/sunsite/compile/production/php5-200404261230/ext/standard/proc_open.c:876: error: dereferencing pointer to incomplete type /opt/sunsite/compile/production/php5-200404261230/ext/standard/proc_open.c:898: error: dereferencing pointer to incomplete type [...many, many more...] /opt/sunsite/compile/production/php5-200404261230/ext/standard/proc_open.c:898: error: dereferencing pointer to incomplete type /opt/sunsite/compile/production/php5-200404261230/ext/standard/proc_open.c: At top level: /opt/sunsite/compile/production/php5-200404261230/Zend/zend.h:283: error: storage size of `obj' isn't known make: *** [ext/standard/proc_open.lo] Error 1 gcc --version gcc (GCC) 3.3.2 (from sunfreeware.com) uname -a SunOS groundzero 5.9 Generic_112233-11 sun4u sparc SUNW,Ultra-60 Here the configure options (copied from config.nice...): CFLAGS='-I/usr/include' \ LDFLAGS='-lstdc++' \ CC='gcc' \ './configure' \ '--prefix=/opt/www' \ '--with-apxs=/opt/www/bin/apxs' \ '--with-mysql=/opt/mysql' \ '--with-sockets' \ '--enable-memory-limit' \ '--enable-trans-sid' \ '--sysconfdir=/opt/www/conf' \ '--with-config-file-path=/opt/www/conf' \ '--with-mcrypt=/usr/local' \ '--with-tsrm-pthreads' \ '--with-gnu-ld' \ '--with-dom=/usr/local' \ '--with-dom-xslt=/usr/local' \ '--with-dom-exslt' \ '--with-libxml-dir=/usr/local' \ '--enable-xslt' \ '--with-gd' \ '--with-zlib=/usr/local' \ '--with-xsl=/usr/local' \ As you can see above, this happens with the newest CVS and the RC2 version, but not with RC1. The RC1 runs perfectly on the same machine since one week or so. If you need further info or some testing, please tell me. Best regards, Ralf PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 19:00:01 2025 UTC |
Unfortunately the problem persists on AIX 5.2.0.0 with the php5-200405270430 snapshot. The errors begin with: --- snip --- In file included from /usr/local/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/includ e/sys/wait.h:62, from /usr/local/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/includ e/stdlib.h:314, from /usr/local/src/php5-200405270430/main/php_config.h:2437, from /usr/local/src/php5-200405270430/Zend/zend_config.h:1, from /usr/local/src/php5-200405270430/Zend/zend.h:53, from /usr/local/src/php5-200405270430/main/php.h:34, from /usr/local/src/php5-200405270430/ext/standard/proc_open.c: 25: /usr/include/sys/resource.h:216: error: parse error before "longlong_t" /usr/include/sys/resource.h:218: error: parse error before "ru_idrss" /usr/include/sys/resource.h:219: error: parse error before "ru_isrss" /usr/include/sys/resource.h:220: error: parse error before "ru_minflt" /usr/include/sys/resource.h:221: error: parse error before "ru_majflt" /usr/include/sys/resource.h:222: error: parse error before "ru_nswap" /usr/include/sys/resource.h:223: error: parse error before "ru_inblock" /usr/include/sys/resource.h:224: error: parse error before "ru_oublock" /usr/include/sys/resource.h:225: error: parse error before "ru_msgsnd" /usr/include/sys/resource.h:226: error: parse error before "ru_msgrcv" /usr/include/sys/resource.h:227: error: parse error before "ru_nsignals" /usr/include/sys/resource.h:228: error: parse error before "ru_nvcsw" /usr/include/sys/resource.h:229: error: parse error before "ru_nivcsw" In file included from /usr/local/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/includ e/sys/signal.h:378, from /usr/local/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/includ e/sys/wait.h:66, from /usr/local/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/includ e/stdlib.h:314, from /usr/local/src/php5-200405270430/main/php_config.h:2437, from /usr/local/src/php5-200405270430/Zend/zend_config.h:1, from /usr/local/src/php5-200405270430/Zend/zend.h:53, from /usr/local/src/php5-200405270430/main/php.h:34, from /usr/local/src/php5-200405270430/ext/standard/proc_open.c: 25: /usr/include/sys/context.h:169: error: parse error before "sigset64_t" /usr/include/sys/context.h:172: error: parse error before '}' token In file included from /usr/local/src/php5-200405270430/Zend/zend.h:222, from /usr/local/src/php5-200405270430/main/php.h:34, from /usr/local/src/php5-200405270430/ext/standard/proc_open.c: 25: /usr/local/src/php5-200405270430/Zend/zend_alloc.h:41: error: parse error before "uint" /usr/local/src/php5-200405270430/Zend/zend_alloc.h:41: warning: no semicolon at end of struct or union /usr/local/src/php5-200405270430/Zend/zend_alloc.h:44: error: parse error before "orig_lineno" /usr/local/src/php5-200405270430/Zend/zend_alloc.h:44: warning: type defaults to `int' in declaration of `orig_lineno' /usr/local/src/php5-200405270430/Zend/zend_alloc.h:44: warning: data definition has no type or storage class /usr/local/src/php5-200405270430/Zend/zend_alloc.h:53: error: parse error before ':' token /usr/local/src/php5-200405270430/Zend/zend_alloc.h:54: error: parse error before ':' token --- snip --- The following are the configure directives used (from config.nice): CPPFLAGS='-I/usr/local/include' \ LDFLAGS='-L/lib -L/opt/freeware/lib -L/usr/local/lib' \ CC='/usr/local/bin/gcc' \ './configure' \ '--disable-cgi' \ '--disable-cli' \ '--enable-calendar' \ '--enable-dba' \ '--enable-exif' \ '--enable-embedded-mysqli' \ '--enable-debug' \ '--enable-gd-jis-conv' \ '--enable-gd-native-ttf' \ '--enable-mbstring' \ '--enable-memory-limit' \ '--enable-versioning' \ '--enable-zend-multibyte' \ '--prefix=/apache/php' \ '--with-apxs2=/apache/bin/apxs' \ '--with-apxs2filter=/apache/bin/apxs' \ '--with-gd' \ '--with-gdbm' \ '--with-gettext' \ '--with-inifile' \ '--with-jpeg-dir' \ '--with-ldap' \ '--with-libxml-dir' \ '--with-mime-magic' \ '--with-mnogosearch' \ '--with-mysql=/usr/local/mysql' \ '--with-openssl=/opt/freeware' \ '--with-png-dir' \ '--with-tiff-dir' \ '--with-zlib' \ '--with-zlib-dir' \ '--without-pear' \ "$@" The /usr/include/sys/resource.h file, around line 216, contains: /* * The structure reflects struct rusage in 64-bit mode * and is 64-bit size invariant. */ struct trusage64 { struct timeval64 ru_utime; /* user time used */ struct timeval64 ru_stime; /* system time used */ longlong_t ru_maxrss; longlong_t ru_ixrss; /* integral shared memory size */ longlong_t ru_idrss; /* integral unshared data " */ longlong_t ru_isrss; /* integral unshared stack " */ longlong_t ru_minflt; /* page reclaims */ longlong_t ru_majflt; /* page faults */ longlong_t ru_nswap; /* swaps */ longlong_t ru_inblock; /* block input operations */ longlong_t ru_oublock; /* block output operations */ longlong_t ru_msgsnd; /* messages sent */ longlong_t ru_msgrcv; /* messages received */ longlong_t ru_nsignals; /* signals received */ longlong_t ru_nvcsw; /* voluntary context switches */ longlong_t ru_nivcsw; /* involuntary " */ }; The /usr/include/sys/context.h file, around line 169, contains: #if defined(_LONG_LONG) || defined(__64BIT__) /* * Kernel declaration of sigcontext for 64-bit process. this assumes * int is 4-bytes. 32-bit and 64-bit API both use the sigcontext above. * with sigset_t for 64-bits defined as two ints. */ struct sigcontext64 { int sc_onstack; /* sigstack state to restore */ sigset64_t sc_mask; /* signal mask to restore */ int sc_uerror; /* u_error to restore */ struct __context64 sc_context; /* 64-bit state */ }; Finally, Zend/zend_alloc.h around line 41 contains: typedef struct _zend_mem_header { #if ZEND_DEBUG long magic; char *filename; uint lineno; int reported; char *orig_filename; uint orig_lineno; # ifdef ZTS THREAD_T thread_id; # endif #endif #if ZEND_DEBUG || !defined(ZEND_MM) struct _zend_mem_header *pNext; struct _zend_mem_header *pLast; #endif unsigned int size:31; unsigned int cached:1; } zend_mem_header; Best regards, BjörnHi again! However, almost all tests ('make test') fail with a "bailout" error: ================================================================================ /usr/local/src/php5-200405270430/tests/classes/array_access_003.phpt ================================================================================ ---- EXPECTED OUTPUT object::offsetGet(1) Strict Standards: Only variable references should be returned by reference in %sarray_access_003.php on line %d string(6) "fooBar" object::offsetGet(2) int(1) object::offsetGet(2) object::offsetGet(2) int(2) ===DONE=== ---- ACTUAL OUTPUT object::offsetGet(1) Strict Standards: Only variable references should be returned by reference in /usr/local/src/php5-200405270430/tests/classes/array_access_003.php on line 15 string(6) "fooBar" object::offsetGet(2) int(1) object::offsetGet(2) object::offsetGet(2) int(2) ===DONE=== /usr/local/src/php5-200405270430/main/main.c(1699) : Bailed out without a bailout address! ---- FAILED I'd of course appreciate any clues as to what might cause this. Best regards, Björn