ID: 34339
User updated by: info at ch2o dot info
Reported By: info at ch2o dot info
Status: Open
Bug Type: OCI8 related
Operating System: HP-UX
PHP Version: 4.4.0
New Comment:
i think that the modification 1.51 (51 branch) of config.m4 of oci8 (in
relation i think with bug #29402) while be ok...
but i'm not sure that the PHP_CHECK_64BIT (in acinclude.m4) is ok!
because "int" and "long int" are 4 bytes in 32bit mode...on hp-ux 64bit
(HP-UX 11.11 on PA RISC)...(tested with gcc 32Bit and HP-UX cc in 32bit
and 64Bit!)
the only way i found to detect 64bit on hp-ux is to test macro __LP64__
(on pa risc, beceause on itanium i thnik is differente..)...
Previous Comments:
------------------------------------------------------------------------
[2005-09-02 01:30:08] info at ch2o dot info
Description:
------------
all oracle 64Bit version are delivered with 32bit and 64bit client...
on hp-ux with Oracle 9i 64Bit, the $ORACLE_HOME/lib have 64bit client
library and $ORACLE_HOME/lib32 the 32Bit version...
(seem to be the same on AIX, and i think is the same probleme on other
64bit plateforme with oracle 64bit)
with Oracle 8i 64bit the $ORACLE_HOME/lin containt 32bit version and
$ORACLE_HOME/lib64 the 64Bit version...
when you whant compile php + oci8 in 32bit with oracle 8i 64bit have no
probleme...
but with 9i they dont work beceause the 32bit client lib are in
$ORACLE_HOME/lib32 not in $ORACLE_HOME/lib...
with the detection schema used in oci8 ext, they cannot compile php +
oci8 in 32bit with oracle 9i 64Bit...
why i whant to compile php in 32Bit with Oracle 64Bit...
on hp-ux there no precompiled version for 64Bit of all opensource
needed for compiling php and all the nessary for use php...
i think the probleme is the same with the 10g...
Reproduce code:
---------------
na
Expected result:
----------------
na
Actual result:
--------------
have modified the config.m4 of the oci8...
have replace $OCI8_DIR/lib with $OCI8_LIBDIR...
and have added at the start of AC_OCI8_VERSION:
OCI8_LIBDIR=$OCI8_DIR/lib
and have added :
elif test -f $OCI8_DIR/lib32/libclntsh.$SHLIB_SUFFIX_NAME.9.0; then
OCI8_VERSION=9.0
OCI8_LIBDIR=$OCI8_DIR/lib32
before:
elif test -f $OCI8_LIBDIR/libclntsh.$SHLIB_SUFFIX_NAME.9.0; then
and they worked fine...
but with that, they privilege the 32bit version vs the default version
(the 64bit version with oracle 9i 64Bit)
the seconde posibility is to add --oci8-32bit to force the use of lib32
in place of lib...for use with >=9i 64Bit in 32bit mode...
and --oci8-64bit to force the use of lib64 in place of lib for compile
with Oracle 8i 64bit in 64Bit mode...
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=34339&edit=1