RE: installing php 5.5.1 on to solaris 10 results in error during make

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Hello,

Oci still not finding all libs. ldd reports:

libnnz11.so =>   (file not found)

crle:

Configuration file [version 4]: /var/ld/ld.config
  Default Library Path (ELF):   /usr/local/lib:/lib:/usr/lib
  Trusted Directories (ELF):    /lib/secure:/usr/lib/secure  (system default)

Command line:
  crle -c /var/ld/ld.config -l /usr/local/lib:/lib:/usr/lib

Location of libnnz:

/usr/local/lib/libnnz12.so
/opt/oracle/product/11.2.0/client/libnnz11.so

# file /usr/local/lib/libnnz12.so
/usr/local/lib/libnnz12.so:     ELF 64-bit LSB dynamic lib AMD64 Version 1 [SSE2 SSE MMX CMOV], dynamically linked, not stripped

# file /opt/oracle/product/11.2.0/client/libnnz11.so
/opt/oracle/product/11.2.0/client/libnnz11.so:  ELF 64-bit LSB dynamic lib AMD64 Version 1 [SSE2 SSE CMOV], dynamically linked, not stripped

I have no clue why it is not picking up the lib dirs.

Kind regards,

Kas


Date: Tue, 13 Aug 2013 14:13:47 +0600
From: eugene@xxxxxxxxx
To: kascoenen@xxxxxxxxxxx
CC: php-install@xxxxxxxxxxxxx
Subject: Re: installing php 5.5.1 on to solaris 10 results in error during make

On 13.08.2013 12:58, KAs Coenen wrote:
Hey,

Instant client is installed under (/opt/oracle/product/12.1.0/client). I tried to install oci8 with pecl but I get an error:

# /usr/local/php5/bin/pecl install oci8
No releases for package "pecl/oci8" exist
install failed

Installing from source also failed but I did try to install 2.0.0. I was able to compile it but ldd shows me some libs were not found:

root@zone-eu4# ldd oci8.so
        libclntsh.so.12.1 =>     /opt/oracle/product/12.1.0/client/libclntsh.so.12.1
        libc.so.1 =>     /lib/libc.so.1
        libgcc_s.so.1 =>         /usr/sfw/lib/libgcc_s.so.1
        libnnz12.so =>   (file not found)
        libons.so =>     (file not found)
        libkstat.so.1 =>         /lib/libkstat.so.1
        libnsl.so.1 =>   /lib/libnsl.so.1
        libsocket.so.1 =>        /lib/libsocket.so.1
        libresolv.so.2 =>        /lib/libresolv.so.2
        libgen.so.1 =>   /lib/libgen.so.1
        libdl.so.1 =>    /lib/libdl.so.1
        libsched.so.1 =>         /usr/lib/libsched.so.1
        librt.so.1 =>    /lib/librt.so.1
        libaio.so.1 =>   /lib/libaio.so.1
        libpool.so.1 =>  /usr/lib/libpool.so.1
        libadm.so.1 =>   /lib/libadm.so.1
        libefi.so.1 =>   /lib/libefi.so.1
        libm.so.2 =>     /lib/libm.so.2
        libclntshcore.so.12.1 =>         (file not found)
        libmp.so.2 =>    /lib/libmp.so.2
        libmd.so.1 =>    /lib/libmd.so.1
        libscf.so.1 =>   /lib/libscf.so.1
        libxml2.so.2 =>  /usr/lib/libxml2.so.2
        libnvpair.so.1 =>        /lib/libnvpair.so.1
        libexacct.so.1 =>        /usr/lib/libexacct.so.1
        libuuid.so.1 =>  /lib/libuuid.so.1
        libdoor.so.1 =>  /lib/libdoor.so.1
        libuutil.so.1 =>         /lib/libuutil.so.1
        libpthread.so.1 =>       /lib/libpthread.so.1
        libz.so.1 =>     /usr/lib/libz.so.1
These libraries are usually located on $ORACLE_HOME/lib.

Although libnnz12 is found in oracle instant client path:

root@zone-eu4# find / -name libnnz12.so
/usr/local/lib/libnnz12.so
/opt/oracle/product/12.1.0/client/libnnz12.so

Its the same for libclntshcore.so.12.1. When restarting apache I get this error (which is normal I guess):

[12-Aug-2013 09:50:09 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/php5/lib/php/extensions/no-debug-non-zts-20121212/oci8.so' - ld.so.1: php: fatal: libnnz12.so: open failed: No such file or directory in Unknown on line 0
Well... you can add the directory where libnnz12.so is located to the crle -64 library path, then rerun. A more easy way to check is actually running 'php -m'. Although I should say that on my servers $ORACLE_HOME/lib isn't added to system linker's path, and oci8 is working just fine.

From what I see I can also recommend you to try to build oci8 1.4.x against oracle client 11g, because 12 is just out and there can be a lots of difficulties with it. At least I use the 11g and oci8 1.4.x. From what I know - oracle software is always backward-compatible, I mean you can connect with older clients to a modern server (some features will be probably unavailable, but the main functionality will remain).

Eugene.

[Index of Archives]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [Postgresql]     [PHP Books]     [PHP Databases]     [PHP SOAP]
  Powered by Linux