#13695 [Com]: Compilation fails when trying to compile with DB2 Support
ID: 13695 Comment by: ibellinfantie at yahoo dot co dot uk Reported By: pilyad at yahoo dot com Status: No Feedback Bug Type: Compile Failure Operating System: AIX 4.3.3 PHP Version: 4.0.6 New Comment: OK, the solution was NOT to use the xlc compiler as stated by IBM in the RedBook on installing PHP for pseries etc. but to change the makefile variable , CC = xlc to CC = cc . With the removal of the duplicate definitions as stated previously and this compiler change, it all worked a treat. Previous Comments: [2003-11-14 10:41:09] ibellinfantie at yahoo dot co dot uk I've got past this error by just commenting out the defintions of the ODBCVER in the PHP header files. Its still defined in the DB2 includes. However, now have other errors to resolve as below d char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3293.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3368.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3369.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3370.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3451.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3452.25: 1506-280 (E) Function argument assignment between types "unsig [2003-11-14 09:40:51] ibellinfantie at yahoo dot co dot uk The DB2 include file will be found in /usr/include for AIX by way of a symbolic link with the DB2 install directory lib. If you have n't got the symbolic link, then something got broke. You can add these back using ln -s ( see man page ) . However, the problem in question which I get when building on AIXv5.1, is in the make output extraction below . It looks like the header sqlcli1.h has a definition which make thinks the php build is trying to overide. i.e. in the /etc/odbc/php_odbc.c file is a line checking the value of ODBCVER #if defined(ODBCVER) && (ODBCVER >= 0x0300) This should n't be a problem but it creates the error , "/usr/include/sqlcli.h", line 718.9: 1506-213 (S) Macro name ODBCVER cannot be redefined. I'm trying to figure out, what needs to be changed in the build to alow this to work. If anyone has any idea, please let me know. There are other define errors include in the extract below. I/usr/sys/inst.images/php-4.3.4/php-4.3.4/include -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/main -I/usr/sys/inst.images/php- 4.3.4/php-4.3.4 -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/Zend -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/xml/expat -qf lag=e:e -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/TSRM -ma -DPASE -c /usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php _odbc.c -o ext/odbc/php_odbc.o && echo > ext/odbc/php_odbc.lo "/usr/include/sqlcli.h", line 718.9: 1506-213 (S) Macro name ODBCVER cannot be redefined. "/usr/include/sqlcli1.h", line 126.10: 1506-213 (S) Macro name SQL_EXT_API_LAST cannot be redefined. "/usr/include/sqlcli1.h", line 207.10: 1506-213 (S) Macro name SQL_OJ_CAPABILITIES cannot be redefined. "/usr/include/sqlcli1.h", line 219.9: 1506-213 (S) Macro name SQL_INFO_LAST cannot be redefined. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 201.30: 1506-280 (S) Function argument assignment betwee n types "long" and "void*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/e [2002-11-14 13:01:59] dougnak at hotmail dot com I spoke too soon. The ld.so.conf isn't what fixed it, you need to have the includes installed in /usr/IBMdb2/V7.1/includes, although I did add that line to my ld.so.conf and left it there. System is Gentoo Linux 1.4_rc1 and RedHat 7.3 with kernel 2.4.19. AFAIK these are installed with the install development applications option or something in the DB2 install. (which, along with RPM's I've stopped using) -
#13695 [Com]: Compilation fails when trying to compile with DB2 Support
ID: 13695 Comment by: ibellinfantie at yahoo dot co dot uk Reported By: pilyad at yahoo dot com Status: No Feedback Bug Type: Compile Failure Operating System: AIX 4.3.3 PHP Version: 4.0.6 New Comment: I've got past this error by just commenting out the defintions of the ODBCVER in the PHP header files. Its still defined in the DB2 includes. However, now have other errors to resolve as below d char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3293.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3368.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3369.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3370.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3451.25: 1506-280 (E) Function argument assignment between types "unsig ned char*" and "char*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 3452.25: 1506-280 (E) Function argument assignment between types "unsig Previous Comments: [2003-11-14 09:40:51] ibellinfantie at yahoo dot co dot uk The DB2 include file will be found in /usr/include for AIX by way of a symbolic link with the DB2 install directory lib. If you have n't got the symbolic link, then something got broke. You can add these back using ln -s ( see man page ) . However, the problem in question which I get when building on AIXv5.1, is in the make output extraction below . It looks like the header sqlcli1.h has a definition which make thinks the php build is trying to overide. i.e. in the /etc/odbc/php_odbc.c file is a line checking the value of ODBCVER #if defined(ODBCVER) && (ODBCVER >= 0x0300) This should n't be a problem but it creates the error , "/usr/include/sqlcli.h", line 718.9: 1506-213 (S) Macro name ODBCVER cannot be redefined. I'm trying to figure out, what needs to be changed in the build to alow this to work. If anyone has any idea, please let me know. There are other define errors include in the extract below. I/usr/sys/inst.images/php-4.3.4/php-4.3.4/include -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/main -I/usr/sys/inst.images/php- 4.3.4/php-4.3.4 -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/Zend -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/xml/expat -qf lag=e:e -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/TSRM -ma -DPASE -c /usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php _odbc.c -o ext/odbc/php_odbc.o && echo > ext/odbc/php_odbc.lo "/usr/include/sqlcli.h", line 718.9: 1506-213 (S) Macro name ODBCVER cannot be redefined. "/usr/include/sqlcli1.h", line 126.10: 1506-213 (S) Macro name SQL_EXT_API_LAST cannot be redefined. "/usr/include/sqlcli1.h", line 207.10: 1506-213 (S) Macro name SQL_OJ_CAPABILITIES cannot be redefined. "/usr/include/sqlcli1.h", line 219.9: 1506-213 (S) Macro name SQL_INFO_LAST cannot be redefined. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 201.30: 1506-280 (S) Function argument assignment betwee n types "long" and "void*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/e [2002-11-14 13:01:59] dougnak at hotmail dot com I spoke too soon. The ld.so.conf isn't what fixed it, you need to have the includes installed in /usr/IBMdb2/V7.1/includes, although I did add that line to my ld.so.conf and left it there. System is Gentoo Linux 1.4_rc1 and RedHat 7.3 with kernel 2.4.19. AFAIK these are installed with the install development applications option or something in the DB2 install. (which, along with RPM's I've stopped using) [2002-11-14 12:42:12] dougnak at hotmail dot com Building on any unix variant will fail with the same error. The file php is looking for is sqlcli1.h, included from file ext/odbc/php_odbc_includes.h on line 287. This file resides in the /usr/IBMdb2/V7.1/lib directory, which needs to be added to /etc/ld.so.conf and rerun ldconfig. --
#13695 [Com]: Compilation fails when trying to compile with DB2 Support
ID: 13695 Comment by: ibellinfantie at yahoo dot co dot uk Reported By: pilyad at yahoo dot com Status: No Feedback Bug Type: Compile Failure Operating System: AIX 4.3.3 PHP Version: 4.0.6 New Comment: The DB2 include file will be found in /usr/include for AIX by way of a symbolic link with the DB2 install directory lib. If you have n't got the symbolic link, then something got broke. You can add these back using ln -s ( see man page ) . However, the problem in question which I get when building on AIXv5.1, is in the make output extraction below . It looks like the header sqlcli1.h has a definition which make thinks the php build is trying to overide. i.e. in the /etc/odbc/php_odbc.c file is a line checking the value of ODBCVER #if defined(ODBCVER) && (ODBCVER >= 0x0300) This should n't be a problem but it creates the error , "/usr/include/sqlcli.h", line 718.9: 1506-213 (S) Macro name ODBCVER cannot be redefined. I'm trying to figure out, what needs to be changed in the build to alow this to work. If anyone has any idea, please let me know. There are other define errors include in the extract below. I/usr/sys/inst.images/php-4.3.4/php-4.3.4/include -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/main -I/usr/sys/inst.images/php- 4.3.4/php-4.3.4 -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/Zend -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/xml/expat -qf lag=e:e -I/usr/sys/inst.images/php-4.3.4/php-4.3.4/TSRM -ma -DPASE -c /usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php _odbc.c -o ext/odbc/php_odbc.o && echo > ext/odbc/php_odbc.lo "/usr/include/sqlcli.h", line 718.9: 1506-213 (S) Macro name ODBCVER cannot be redefined. "/usr/include/sqlcli1.h", line 126.10: 1506-213 (S) Macro name SQL_EXT_API_LAST cannot be redefined. "/usr/include/sqlcli1.h", line 207.10: 1506-213 (S) Macro name SQL_OJ_CAPABILITIES cannot be redefined. "/usr/include/sqlcli1.h", line 219.9: 1506-213 (S) Macro name SQL_INFO_LAST cannot be redefined. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/ext/odbc/php_odbc.c", line 201.30: 1506-280 (S) Function argument assignment betwee n types "long" and "void*" is not allowed. "/usr/sys/inst.images/php-4.3.4/php-4.3.4/e Previous Comments: [2002-11-14 13:01:59] dougnak at hotmail dot com I spoke too soon. The ld.so.conf isn't what fixed it, you need to have the includes installed in /usr/IBMdb2/V7.1/includes, although I did add that line to my ld.so.conf and left it there. System is Gentoo Linux 1.4_rc1 and RedHat 7.3 with kernel 2.4.19. AFAIK these are installed with the install development applications option or something in the DB2 install. (which, along with RPM's I've stopped using) [2002-11-14 12:42:12] dougnak at hotmail dot com Building on any unix variant will fail with the same error. The file php is looking for is sqlcli1.h, included from file ext/odbc/php_odbc_includes.h on line 287. This file resides in the /usr/IBMdb2/V7.1/lib directory, which needs to be added to /etc/ld.so.conf and rerun ldconfig. [2002-07-30 01:00:09] php-bugs at lists dot php dot net No feedback was provided for this bug for over a month, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open". [2002-06-29 23:31:52] [EMAIL PROTECTED] Please try this snapshot: http://snaps.php.net/php4-latest.tar.gz [2001-10-16 13:41:54] pilyad at yahoo dot com Have PHP-4.0.6 compiled and installed without MySql support and without IBM-DB2 Support. When I tried to compile the same with IBM-DB2 Support compilation fails. Server Built : Apache 1.3.19 DB2 Version : DB2 7.1 OS : AIX 4.3.3 Compiler : xlC_r -ma IBM Compiler Configuring PHP-4.0.6 as follows "./configure" \ "--prefix=/mds/work/dd4cx8t/Web/php4.0.6" \ "--with-apxs=/mds/work/dd4cx8t/Web/apache/bin/apxs" \ "--without-mysql" \ "--with-ibm-db2=/usr/lpp/db2_07_01" \ "--enable-versioning" \ "--enable-track-vars" \ "--enable-trans-sid" \ Compilation fails with following errors Making all in main /mds/work/dd4cx8t/Web/php-4.0.6/main /bin/sh /mds/work/dd4cx8t/Web/php-4.0.6/libtool --silent --mode=compile xlC_r -ma -I. -I/mds/work/dd4cx8t/Web/php-4.0.6/main -I/mds/work/dd4cx8t/Web/php-4.0.6/main -I/mds/work/dd4cx8t/Web/php-4.0.6 -I/mds/work/dd4cx8t/Web/apache/include -