Re: Failed DBD oracle module

Bruce Johnson <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.general
Message-ID <[email protected]>
On Sep 20, 2013, at 8:57 AM, "Lieng, Gia" <[email protected]> wrote:

>  
> $ perl perl_test.script
> Can't load '/usr/local/lib/perl5/site_perl/5.18.1/sun4-solaris/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: ld.so.1: perl: fatal:
> /opt/oracle/10.2.0.3/lib/libclntsh.so.10.1: wrong ELF class: ELFCLASS64 at /usr/local/lib/perl5/5.18.1/sun4-solaris/DynaLoader.pm line 190.
> at perl_test.script line 4.
> Compilation failed in require at perl_test.script line 4.
> BEGIN failed--compilation aborted at perl_test.script line 4.
>  
>  

I think that 'Wrong ELF class' error means you have a mismatch in bit-ness between either Perl and Oracle or DBD and Oracle; I think this one means you have the 64-bit Oracle libraries installed on a system expecting 32-bits?

Perhaps you don't have the correct ORACLE_HOME and LD_LIBRARY_PATH environment variables set? This can happen if you have 32-bit oracle db installed on the system, but use the 64-bit Oracle Instant Client to compile DBD::Oracle. You can run a 32-bit Oracle DB and use a 64-Bit oracle client on the same system, you just need to know which set of libraries and ORACLE_HOME to look at.


-- 
Bruce Johnson
University of Arizona
College of Pharmacy
Information Technology Group

Institutions do not have opinions, merely customs
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.