Does this sound familiar? Except I don't really know why he got this
problem and went that far without getting the DBD setup correctly with
Linux and Oracle 10g.

It is just a side-reading from a public DBI/DBD forum.

George Hsia


-----Original Message-----
From: Lam, Keith (MGS) [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 23, 2006 7:55 AM
To: [email protected]
Cc: Persaud, Rohan (MGS); Lam, Keith (MGS); [EMAIL PROTECTED];
[EMAIL PROTECTED]
Subject: Problem on Perl DBI for Oracle-DBD-1.18


Hi DBI experts,

Could you please help me to resolve this Perl Oracle DBD problem.

I am using Oracle Client 10g, Perl 5.8.5 (default from RedHat ES4
installation) and Oracle-DBD-1.18.

The SQLPLUS and Perl cgi program runs and displays output as expected
without any errors from the command line

I have the following error when running perl CGI script using Oracle DBD
from the web browser: 

"install_driver(Oracle) failed: Can't load
'/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBD/Oracle/
Oracle.so' for module DBD::Oracle: libclntsh.so.10.1: cannot open shared
object file: No such file or directory at
/usr/lib/perl5/5.8.5/i386-linux-thread-multi/DynaLoader.pm line 230. at
(eval 1) line 3
Compilation failed in require at (eval 1) line 3.
Perhaps a required shared library or dll isn't installed where expected"

I searched on google and tried the suggestions from forums but still get
the problem unsolved. These are what I tried: 
        
1. I've added /home/oracle/oracle/product/10.2.0/oraclient/lib to
/etc/ld.so.conf and run "ldconfig" as shown below

 [EMAIL PROTECTED] ~]$echo $ORACLE_HOME/lib >> /etc/ld.so.conf   => OK
 [EMAIL PROTECTED] ~]$/sbin/ldconfig:
/home/oracle/oracle/product/10.2.0/oraclient/lib/libexpat.so.0 is not a
symbolic link
 [EMAIL PROTECTED] ~]$ldd
/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBD/Oracle/O
racle.so
        libclntsh.so.10.1 =>
/home/oracle/oracle/product/10.2.0/oraclient/lib/libclntsh.so.10.1
(0x00559000)
        libdl.so.2 => /lib/libdl.so.2 (0x00111000)
        libm.so.6 => /lib/tls/libm.so.6 (0x00115000)
        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x00138000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x0014a000)
        libc.so.6 => /lib/tls/libc.so.6 (0x00218000)
        libnnz10.so =>
/home/oracle/oracle/product/10.2.0/oraclient/lib/libnnz10.so
(0x083c4000)
        /lib/ld-linux.so.2 (0x00542000)

2. I put the following environment variables in the configuration file
httpd.conf:
        SetEnv LD_LIBRARY_PATH
/home/oracle/oracle/product/10.2.0/oraclient/lib
        SetEnv ORACLE_HOME /home/oracle/oracle/product/10.2.0/oraclient

3. I've given authority/access to every folder/object listed in the
above paths to the user I am using. 

4. Making sure all files were accesable and also need to make some links
from the $ORACLE_HOME/lib dir to the */lib dir that perl can access.

5. All authority/access and symbolic links for libclntsh.so.10.1,
libclntsh.so, libocci.so.10.1 and libocci.so are set up properly in
/home/oracle/oracle/product/10.2.0/oraclient/lib

        lrwxrwxrwx  1 oracle oracle       66 Aug 17 08:25 libclntsh.so
-> /home/oracle/oracle/product/10.2.0/oraclient/lib/libclntsh.so.10.1
        -rwxrwxrwx  1 oracle oracle       0 Aug 23 10:34
libclntsh.so.10.1
        lrwxrwxrwx  1 oracle oracle       15 Aug 17 08:25 libocci.so ->
libocci.so.10.1
        -rwxrwxrwx  1 oracle oracle       0 Aug 23 10:38 libocci.so.10.1

Could you please suggest me what else I should try to resolve this
problem? I searched on google extensively but found no other sources of
solutions beside those listed above. 

Thanks,

Keith Lam
Corporate Security (IPC)
Tel: 416-327-1941

Reply via email to