|Subject:||Problems building against a 32-bit full Oracle client|
The purpose of the request is to report a problem which occurs when attempting to build DBD::Oracle 1.34 against a full Oracle 11.2 client on a 32-bit unix platform, and to suggest a fix for it. For the record, I am using perl 5.14.2. My 32-bit platform is Open SUSE 11.4, and my 64-bit platform is SLES 11 SP 1. The Oracle version is 220.127.116.11.0. Background: There are two routes to a successful build on a 64-bit platform. A. Using the Oracle-recommended make-file. The make file Oracle recommend for building OCI applications for Oracle 11 is $ORACLE_HOME/rdbms/demo/. SeeThis file is not shipped as part of either the full client or the server. It is shipped with the 'Database Examples' on disc 7 of 7. If the examples are installed into the same ORACLE_HOME as the full client, Makefile.PL will use $ORACLE_HOME/rdbms/demo/demo_rdbms.mk, and succeed. B. Without the Oracle-recommended make-file. If the Oracle-recommended make file is not installed, Makefile.PL will use instead $ORACLE_HOME/rdbms/lib/ins_rdbms.mk. In this case Makefile.PL writes an alarming warning message (which will be the subject of another RT request), but succeeds. A successful build ensues. On a 32-bit platform, neither route works. This is because the required make-files are not included in the list @mk_oci32 at the beginning of the subroutine find_mkfile in Makefile.PL. Attached is a patch which which fixed this, and makes both routes work in a 32-bit context. Note the necessity to include demo_rdbms.mk in @mk_oci32 after demo_rdbms32.mk. The use of these file names in Oracle 11 is documented in the Oracle documentation referenced above.
Message body not shown because it is not plain text.