Oracle Module Error - AIX

Posted on 2011-05-03
Last Modified: 2013-11-17
I have installed DBD::Oracle  Perl module on AIX 5.3 TL11. I see that I have no issues compiling this module but when I plan to use the module, here is the error

$ cat Oracle_loadid.err
Can't load '/usr/opt/perl5/lib64/site_perl/5.8.8/aix-thread-multi-64all/auto/DBD/Oracle/' for module DBD: racle:      0509-022 Cannot load module /usr/opt/perl5/lib64/site_perl/5.8.8/aix-thread-multi-64all/auto/DBD/Oracle/
        0509-150   Dependent module /optware/oracle/product/11.1.0/client_1/lib32/ could not be loaded.
        0509-103   The module has an invalid magic number.
        0509-022 Cannot load module /usr/opt/perl5/lib64/site_perl/5.8.8/aix-thread-multi-64all/auto/DBD/Oracle/

I have no missing files

$ ls -l /usr/opt/perl5/lib64/site_perl/5.8.8/aix-thread-multi-64all/auto/DBD/Oracle/
-r-xr-xr-x    1 root     system       479114 Feb 08 11:08 /usr/opt/perl5/lib64/site_perl/5.8.8/aix-thread-multi-64all/auto/DBD/Oracle/*

$ ls -l /optware/oracle/product/11.1.0/client_1/lib32/
-rwxr-xr-x    1 oracle   dba        36972652 Feb 25 2009  /optware/oracle/product/11.1.0/client_1/lib32/*
Question by:mnis2008
    LVL 68

    Accepted Solution

    Hi again,

    obviously your LIBPATH points to the 32-bit version of (/optware/oracle/product/11.1.0/client_1/lib32/)

    Your 64-bit Perl needs the 64-bit version of the Oracle client library.

    You must modify LIBPATH to point to /optware/oracle/product/11.1.0/client_1/lib/  

    Attention: This might introduce problems if there are 32-bit (non-Perl) applications which need the 32-bit version!

    If this is relevant for you you'll need to build a special environment for Perl scripts accessing Oracle (e.g. by sourcing a dedicated initialization file before running the Perl scripts).

    LVL 5

    Expert Comment

    Or,  you could use PERL5LIB instead of modifying LIBPATH.  
    In your case, I think this DBD::oracle perl module needs to be compiled using all 64-bit libraries.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    IT, Stop Being Called Into Every Meeting

    Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

    How to Create User-Defined Aggregates in Oracle Before we begin creating these things, what are user-defined aggregates?  They are a feature introduced in Oracle 9i that allows a developer to create his or her own functions like "SUM", "AVG", and…
    This post first appeared at Oracleinaction  ( Anju Garg (Myself). I  will demonstrate that undo for DML’s is stored both in undo tablespace and online redo logs. Then, we will analyze the reaso…
    This video explains what a user managed backup is and shows how to take one, providing a couple of simple example scripts.
    This video shows how to copy an entire tablespace from one database to another database using Transportable Tablespace functionality.

    761 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    6 Experts available now in Live!

    Get 1:1 Help Now