Install of DBD::Oracle on RHEL 4 (Oracle 10g R1)



Hi all,

I'm not sure that this is the correct forum for this question;
apologies if it is not. I'm trying to install DBD::Oracle 1.16 but have
run into problems.

perl Makefile.PL -> OK
make -> some warnings but seems to complete
make test -> crashes with an error from Dyanloader: Can't
load .../Oracle.so .... cannot open shared object file: No such file or
directory

Since blib/arch/auto/DBD/Oracle/Oracle.so does in fact exist, I'm
assuming that there is some other file needed by Oracle.so that isn't
found, but unfortunately the name is not displayed. I'm really not sure
where to begin looking; does anyone have any suggestions?

Some versions, in case it's relevant:
Perl: 5.8.5
Oracle 10.1.0.4 (10G R1 patched to latest patchlevel)
Red Hat Enterprise Linux 4 update 1

Thanks very much in advance for any help on this! Below is the output
from perl Makefile.PL, make, and make test, where the error occurs:

----------------

[oracle@devlims DBD-Oracle-1.16]$ perl Makefile.PL
Multiple copies of Driver.xst found in:
/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBI/
/usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi/auto/DBI/ at
Makefile.PL line 39
Using DBI 1.48 (for perl 5.008005 on i386-linux-thread-multi) installed
in /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBI/

Configuring DBD::Oracle ...

>>> Remember to actually *READ* the README file!
Especially if you have any problems.

Using Oracle in /u01/app/oracle/product/10.1
DEFINE _SQLPLUS_RELEASE = "1001000400" (CHAR)
Oracle version 10.1.0.4 (10.1)
Found /u01/app/oracle/product/10.1/rdbms/demo/demo_rdbms.mk
Using /u01/app/oracle/product/10.1/rdbms/demo/demo_rdbms.mk
Reading /u01/app/oracle/product/10.1/rdbms/demo/demo_rdbms.mk
Reading /u01/app/oracle/product/10.1/rdbms/lib/env_rdbms.mk

Attempting to discover Oracle OCI build rules
gcc -c -o DBD_ORA_OBJ.o DBD_ORA_OBJ.c
by executing: [make -f
/u01/app/oracle/product/10.1/rdbms/demo/demo_rdbms.mk build ECHODO=echo
ECHO=echo GENCLNTSH='echo genclntsh' CC=true OPTIMIZE= CCFLAGS=
EXE=DBD_ORA_EXE OBJS=DBD_ORA_OBJ.o]
Oracle oci build command:
[true -L/u01/app/oracle/product/10.1/lib/
-L/u01/app/oracle/product/10.1/rdbms/lib/ -o DBD_ORA_EXE DBD_ORA_OBJ.o
-lclntsh `cat /u01/app/oracle/product/10.1/lib/sysliblist` -ldl -lm
]

Found header files in plsql/public rdbms/public.

Checking for functioning wait.ph


System: perl5.008005 linux porky.build.redhat.com 2.4.21-25.elsmp #1
smp fri nov 12 21:34:51 est 2004 i686 i686 i386 gnulinux
Compiler: gcc -O2 -g -pipe -m32 -march=i386 -mtune=pentium4
-D_REENTRANT -D_GNU_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/include/gdbm
Linker: /usr/bin/ld
Sysliblist: -ldl -lm -lpthread -lnsl -lirc
Oracle makefiles would have used these definitions but we override
them:
CC: $(COMPDIR)/bin/gcc

CFLAGS: $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\
$(SHARED_CFLAG) $(USRFLAGS)
[$(GFLAG) -O3 $(CDEBUG) $(CCFLAGS)
-I/u01/app/oracle/product/10.1/rdbms/demo
-I/u01/app/oracle/product/10.1/rdbms/public
-I/u01/app/oracle/product/10.1/plsql/public
-I/u01/app/oracle/product/10.1/network/public -DLINUX -D_GNU_SOURCE
-D_LARGEFILE64_SOURCE=1 -D_LARGEFILE_SOURCE=1 -DSLTS_ENABLE
-DSLMXMX_ENABLE -D_REENTRANT -DNS_THREADS $(LPFLAGS) $(USRFLAGS)]

LDFLAGS: -o $@ $(LDPATHFLAG)$(PRODLIBHOME) $(LDPATHFLAG)$(LIBHOME)
$(LDPATHFLAG)$(LIBHOME)stubs/
[-o $@ -L/u01/app/oracle/product/10.1/rdbms/lib/
-L$(LIBHOME) -L$(LIBHOME)stubs/]


Linking with OTHERLDFLAGS = -L/u01/app/oracle/product/10.1/lib/
-L/u01/app/oracle/product/10.1/rdbms/lib/ -lclntsh `cat
/u01/app/oracle/product/10.1/lib/sysliblist` -ldl -lm [from 'build'
rule]


Checking if your kit is complete...
Looks good
LD_RUN_PATH=/u01/app/oracle/product/10.1/lib:/u01/app/oracle/product/10.1/rdbms/lib
Using DBD::Oracle 1.16.
Using DBD::Oracle 1.16.
Multiple copies of Driver.xst found in:
/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBI/
/usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi/auto/DBI/ at
Makefile.PL line 1436
Using DBI 1.48 (for perl 5.008005 on i386-linux-thread-multi) installed
in /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBI/
Writing Makefile for DBD::Oracle

*** If you have problems...
read all the log printed above, and the README and README.help
files.
(Of course, you have read README by now anyway, haven't you?)

[oracle@devlims DBD-Oracle-1.16]$ make
cp Oracle.pm blib/lib/DBD/Oracle.pm
cp oraperl.ph blib/lib/oraperl.ph
cp dbdimp.h blib/arch/auto/DBD/Oracle/dbdimp.h
cp ocitrace.h blib/arch/auto/DBD/Oracle/ocitrace.h
cp Oraperl.pm blib/lib/Oraperl.pm
cp Oracle.h blib/arch/auto/DBD/Oracle/Oracle.h
cp lib/DBD/Oracle/GetInfo.pm blib/lib/DBD/Oracle/GetInfo.pm
cp mk.pm blib/arch/auto/DBD/Oracle/mk.pm
/usr/bin/perl -p -e "s/~DRIVER~/Oracle/g"
/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBI//Driver.xst
> Oracle.xsi
/usr/bin/perl /usr/lib/perl5/5.8.5/ExtUtils/xsubpp -typemap
/usr/lib/perl5/5.8.5/ExtUtils/typemap -typemap typemap Oracle.xs >
Oracle.xsc && mv Oracle.xsc Oracle.c
gcc -c -I/u01/app/oracle/product/10.1/rdbms/demo
-I/u01/app/oracle/product/10.1/rdbms/public
-I/u01/app/oracle/product/10.1/plsql/public
-I/u01/app/oracle/product/10.1/network/public
-I/u01/app/oracle/product/10.1/rdbms/demo
-I/u01/app/oracle/product/10.1/plsql/public
-I/u01/app/oracle/product/10.1/rdbms/public
-I/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBI/
-D_REENTRANT -D_GNU_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/include/gdbm -O2 -g -pipe -m32 -march=i386 -mtune=pentium4
-DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC
"-I/usr/lib/perl5/5.8.5/i386-linux-thread-multi/CORE" -Wall
-Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT
-DORA_OCI_VERSION=\"10.1.0.4\" Oracle.c
Oracle.c: In function `XS_DBD__Oracle__db_ora_lob_append':
Oracle.xs:191: warning: unused variable `startp'
gcc -c -I/u01/app/oracle/product/10.1/rdbms/demo
-I/u01/app/oracle/product/10.1/rdbms/public
-I/u01/app/oracle/product/10.1/plsql/public
-I/u01/app/oracle/product/10.1/network/public
-I/u01/app/oracle/product/10.1/rdbms/demo
-I/u01/app/oracle/product/10.1/plsql/public
-I/u01/app/oracle/product/10.1/rdbms/public
-I/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBI/
-D_REENTRANT -D_GNU_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/include/gdbm -O2 -g -pipe -m32 -march=i386 -mtune=pentium4
-DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC
"-I/usr/lib/perl5/5.8.5/i386-linux-thread-multi/CORE" -Wall
-Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT
-DORA_OCI_VERSION=\"10.1.0.4\" dbdimp.c
dbdimp.c: In function `ora_db_login6':
dbdimp.c:282: warning: unused variable `o'
dbdimp.c:283: warning: unused variable `l'
gcc -c -I/u01/app/oracle/product/10.1/rdbms/demo
-I/u01/app/oracle/product/10.1/rdbms/public
-I/u01/app/oracle/product/10.1/plsql/public
-I/u01/app/oracle/product/10.1/network/public
-I/u01/app/oracle/product/10.1/rdbms/demo
-I/u01/app/oracle/product/10.1/plsql/public
-I/u01/app/oracle/product/10.1/rdbms/public
-I/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBI/
-D_REENTRANT -D_GNU_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/include/gdbm -O2 -g -pipe -m32 -march=i386 -mtune=pentium4
-DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC
"-I/usr/lib/perl5/5.8.5/i386-linux-thread-multi/CORE" -Wall
-Wno-comment -DUTF8_SUPPORT -DNEW_OCI_INIT
-DORA_OCI_VERSION=\"10.1.0.4\" oci8.c
oci8.c:566: warning: 'fetch_func_nty' defined but not used
oci8.c:1012: warning: 'fbh_setup_getrefpv' defined but not used
Running Mkbootstrap for DBD::Oracle ()
chmod 644 Oracle.bs
rm -f blib/arch/auto/DBD/Oracle/Oracle.so
gcc -shared -L/usr/local/lib Oracle.o dbdimp.o oci8.o
-L/u01/app/oracle/product/10.1/lib/
-L/u01/app/oracle/product/10.1/rdbms/lib/ -lclntsh `cat
/u01/app/oracle/product/10.1/lib/sysliblist` -ldl -lm -o
blib/arch/auto/DBD/Oracle/Oracle.so
chmod 755 blib/arch/auto/DBD/Oracle/Oracle.so
cp Oracle.bs blib/arch/auto/DBD/Oracle/Oracle.bs
chmod 644 blib/arch/auto/DBD/Oracle/Oracle.bs
/usr/bin/perl "-Iblib/arch" "-Iblib/lib" ora_explain.PL ora_explain
Extracted ora_explain from ora_explain.PL with variable substitutions.
cp ora_explain blib/script/ora_explain
/usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)"
blib/script/ora_explain
Manifying blib/man1/ora_explain.1
Manifying blib/man3/DBD::Oracle.3pm
Manifying blib/man3/DBD::Oraperl.3pm
[oracle@devlims DBD-Oracle-1.16]$ make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
"test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01base................Failed to load Oracle extension and/or shared
libraries:install_driver(Oracle) failed: Can't load
'/home/oracle/downloads/perl/DBD-Oracle-1.16/blib/arch/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
at t/01base.t line 19
The remaining tests will probably also fail with the same error.

*** Please read the README and README.help files for help. ***

make: *** [test_dynamic] Interrupt

.



Relevant Pages

  • DBD::Oracle / ORACLE_HOME="/app/local/oracle/product/9.2.0" / Solaris-2.8 / ...
    ... cronus@rsx94220 $ perl Makefile.PL -p ... Attempting to discover Oracle OCI build rules ... cc1: warning: as it has already been specified as a non-system directory ... Oracle makefiles would have used these definitions but we override them: ...
    (perl.dbi.users)
  • activesync installation error
    ... I am attempting to install activesync 3.8 or 3.71 on a windows 2000 pro ... WARNING: Uninstall logging failed - uninstall will not work ... Copying static files to C:\Program Files\Microsoft ActiveSync_new ...
    (microsoft.public.pocketpc.activesync)
  • Re: disklabel error in 4.11 release
    ... I personally have no experience with disklabel so it took me a bit to track down, but it seems like the raw device is not allowing anything to edit the first sectors. ... Keep in mind that an Olive install effectively turns your BSD box into a Juniper box, so the boot procedure will be different, which is why I'm leaning toward this. ... olive1# disklabel ad4 ... WARNING: This package will load JUNOS 7.2R4.2 software. ...
    (freebsd-questions)
  • Re: activesync installation error
    ... Install Dir = C:Program FilesMicrosoft ActiveSync ... Change Install Dir = C:Program FilesMicrosoft ActiveSync_new ... WARNING: Could not create the main WCES registry keys Copying static files to C:WINNTsystem32 ...
    (microsoft.public.pocketpc.activesync)
  • Yum Problems, and Apt-Get Problems, Can Anyone help?
    ... .Package php-domxml needs libxsltbreakpoint.so.1, this is not available. ... am trying to install something. ... There are multiple versions of "autoconf213" in your system. ... you may remove that warning by setting the following ...
    (Fedora)