ID: 25211 Updated by: [EMAIL PROTECTED] Reported By: php at hottub dot ca -Status: Open +Status: Feedback Bug Type: Compile Failure Operating System: AIX 5.1 ML4 PHP Version: 4.3.3 New Comment:
Does it work if you use GCC? Previous Comments: ------------------------------------------------------------------------ [2003-08-25 12:56:58] php at hottub dot ca Recompiled with the release version, and this issue has not been corrected. ------------------------------------------------------------------------ [2003-08-23 09:54:54] php at hottub dot ca When I added the remainder of the configure options, the error occured again, despite the fact that the definitions are the same in both places. Apparently the AIX compiler throws 'unsigned' in front of 'char' in header files. When I edited both php_image.h and image.c to match each other (simply 'char'), I got a successful compile. Tests have been submitted to the QA site. On a previous compile attempt, setting both definitions to 'const char' resulted in the same error again. I will attempt to determine if this is a compiler issue for which there is a fix. ------------------------------------------------------------------------ [2003-08-22 22:46:13] php at hottub dot ca Removing 'const' from line 60 of ext/standard/ php_image.c allowed a clean compile -- make test will be submitted to list after additional configure flags have been added. ------------------------------------------------------------------------ [2003-08-22 13:51:15] [EMAIL PROTECTED] The declarations are exactly the same but maybe the compiler you use doesn't understand const in return types. So please remove const from the return type in both .c and .h file and tell me if that helps. If it doesn't we need to find out why your compiler thinks the return type is 'unsigned char'. ------------------------------------------------------------------------ [2003-08-22 10:15:44] php at hottub dot ca Description: ------------ Trying to compile 4.3.3RC4 on AIX 5.1 ML4 using IBM Visual Age C version 6.0 (cc). PHP compiles properly with other options without issue, but when issuing configure with the --with-zlib and -- with-bz2 options, compilation fails. Here is the command being executed: cc -Iext/standard/ -I/build/php-4.3.3RC4/ext/standard/ -DPHP_ATOM_INC -I/build/php-4.3.3RC4/include -I/build/ php-4.3.3RC4/main -I/build/php-4.3.3RC4 -I/build/php- 4.3.3RC4/Zend -I/usr/local/include -I/build/php- 4.3.3RC4/ext/xml/expat -I/build/php-4.3.3RC4/TSRM -g -c /build/php-4.3.3RC4/ext/standard/image.c -o ext/ standard/image.o && echo > ext/standard/image.lo And the error output: "/build/php-4.3.3RC4/ext/standard/image.c", line 1029.21: 1506-343 (S) Redeclaration of php_image_type_to_mime_type differs from previous declaration on line 60 of "/build/php-4.3.3RC4/ext/ standard/php_image.h". "/build/php-4.3.3RC4/ext/standard/image.c", line 1029.21: 1506-050 (I) Return type "unsigned char*" in redeclaration is not compatible with the previous return type "const unsigned char*". make: *** [ext/standard/image.lo] Error 1 The system does not have mysql installed (IBM's DB2 is installed, but not enabled as a configuration option). There are also a number of warnings during compilation that all relate to mysql.h: "/build/php-4.3.3RC4/ext/mysql/libmysql/mysql.h", line 181.14: 1506-731 (W) The '_Export' keyword is not supported on the target platform. The keyword is ignored. This is the output from configure when the options are enabled: 00Configuring extensions00 checking for ZLIB support... yes checking if the location of ZLIB install directory is defined... no checking for gzgets in -lz... yes checking whether to enable bc style precision math functions... no checking for BZip2 support... yes checking for BZip2 in default path... found in /usr checking for BZ2_bzerror in -lbz2... yes I can make a shell account available for the assignee to test themselves. -JD. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=25211&edit=1
