ID: 39312 Comment by: michael-ring at t-online dot de Reported By: andrew dot nagy at villanova dot edu Status: Assigned Bug Type: PDO related Operating System: Linux PHP Version: 5.2.4 Assigned To: sixd New Comment:
I've found a problem under MacOSX, the extension'.so' is hardcoded in the library detection for pdo_oci. This breaks under MacOSX because libclntsh has '.dylib' extension instead of '.so'. To solve this problem the following patch has to be applied. Shall I open a new bug in order to get this included in upcomming php-Versions? --- ext/pdo_oci/config.m4.orig 2009-01-28 23:31:07.000000000 +0100 +++ ext/pdo_oci/config.m4 2009-01-28 23:34:39.000000000 +0100 @@ -97,11 +97,11 @@ else AC_MSG_ERROR([I'm too dumb to figure out where the include dir is in your Instant Client install]) fi - if test -f "$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/lib/libclntsh.so" ; then + if test -f "$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/lib/libclntsh.$SHLIB_SUFFIX_NAME" ; then PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/lib/oracle/$PDO_OCI_IC_VERS/client/lib" - elif test -f "$PDO_OCI_IC_PREFIX/client/lib/libclntsh.so" ; then + elif test -f "$PDO_OCI_IC_PREFIX/client/lib/libclntsh.$SHLIB_SUFFIX_NAME" ; then PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX/client/lib" - elif test -f "$PDO_OCI_IC_PREFIX/libclntsh.so" ; then + elif test -f "$PDO_OCI_IC_PREFIX/libclntsh.$SHLIB_SUFFIX_NAME" ; then PDO_OCI_LIB_DIR="$PDO_OCI_IC_PREFIX" else AC_MSG_ERROR([I'm too dumb to figure out where the libraries are in your Instant Client install]) Previous Comments: ------------------------------------------------------------------------ [2009-01-20 11:42:00] fernando dot wendt at gmail dot com More info about the lastest Oracle Instant Client under Linux: i'm configuring a web server with Apache2.2.11, PHP5.2.8, and OIC11.1, and PDO compile only works with this syntax: ./configure --with-oci8=shared,instantclient,/usr/lib/oracle --with-pdo-oci=instantclient,/usr/lib/oracle,11.1 Presuming /usr/lib/oracle is your Instant Client base directory. The great stuff is pass the version number at the command line, just as Andrew point us. Thanks a lot, and i do suggest you to put this detail on the online documentation website, at installing PDO Oracle. Best regards. ------------------------------------------------------------------------ [2007-09-27 09:56:50] j...@php.net Chris, can you check this out please? ------------------------------------------------------------------------ [2007-09-25 22:08:48] tony2...@php.net Yeah, but I never maintained PDO_OCI. ------------------------------------------------------------------------ [2007-09-25 09:53:13] j...@php.net Tony, I wasn't sure to whom to assign this but you're one of the oci8 maintainers AFAIK. :) ------------------------------------------------------------------------ [2007-09-24 21:20:56] andrew dot nagy at villanova dot edu I just did an install of php 5.2.4 on a brand new RHEL server. The only way I could get this to work is by using the zip files provided by Oracle, not the RPMs. Both the Basic and SDK are need (well I am assuming the Basic is needed). Once I unzip the files, I needed to create 2 symbolic links -- both libclntsh.so and libocci.so. Could this be fixed in the configure script to look for the original files instead of the renamed files? For now - I have created a patch that makes the language a bit more intuitive if this helps at all. It is diff'ed against the 5.2.4 release. 1305,1306c1305,1306 < Use --with-pdo-oci=instantclient,/path/to/instantclient,version < for an Oracle Instant Client SDK install. --- > Use --with-pdo-oci=instantclient,prefix,version > for an Oracle Instant Client SDK. 73096c73096 < { echo "configure: error: I'm too dumb to figure out where the include dir is in your Instant Client install" 1>&2; exit 1; } --- > { echo "configure: error: Cannot find the Instant Client SDK in your Instant Client install" 1>&2; exit 1; } 73105c73105 < { echo "configure: error: I'm too dumb to figure out where the libraries are in your Instant Client install" 1>&2; exit 1; } --- > { echo "configure: error: Cannot find the libclntsh.so file. Try making a symbolic link in your Instant Client SDK install" 1>&2; exit 1; } ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/39312 -- Edit this bug report at http://bugs.php.net/?id=39312&edit=1