Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?

DBD::Oracle Install

by Citrusmoose (Initiate)
on May 02, 2007 at 20:28 UTC ( #613255=perlquestion: print w/replies, xml ) Need Help??
Citrusmoose has asked for the wisdom of the Perl Monks concerning the following question:


I'm a novice user of linux and perl so bare with me.

I'm trying to install the DBD::Oracle 1.19 module under Perl 5.8.8 on SuSE 10.1. I've successfully installed Oracle InstantClient (I've connected to a DB with sqlplus). However, when I run "cpan -i DBD::Oracle" I get the following: Going to build P/PY/PYTHIAN/DBD-Oracle-1.19.tar.gz Multiple copies of Driver.xst found in: /usr/lib/perl5/site_perl/5.8.8 +/x86_64-linux-thread-multi/auto/DBI/ /usr/lib/perl5/vendor_perl/5.8.8 +/x86_64-linux-thread-multi/auto/DBI/ at Makefile.PL line 35 Using DBI 1.54 (for perl 5.008008 on x86_64-linux-thread-multi) instal +led in /usr/lib/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/ +DBI/ Configuring DBD::Oracle for perl 5.008008 on linux (x86_64-linux-threa +d-multi) Remember to actually *READ* the README file! Especially if you have an +y problems. Using Oracle in /usr/lib/oracle/ DEFINE _SQLPLUS_RELEASE = "1002000300" (CHAR) Oracle version (10.2) Looks like an Instant Client installation, okay Your LD_LIBRARY_PATH env var is set to '/usr/lib/oracle/ +t/lib' Oracle sysliblist: invalid top directory at /usr/lib/perl5/5.8.8/File/ line 592. Running make test Make had some problems, maybe interrupted? Won't test Running make install Make had some problems, maybe interrupted? Won't install

Can someone help?


Replies are listed 'Best First'.
Re: DBD::Oracle Install
by almut (Canon) on May 03, 2007 at 19:19 UTC

    Have you downloaded/installed the Instant Client SDK too, which provides the required header files? If so, does ORACLE_HOME point to the proper directory?

    Makefile.PL's find_headers() routine looks in a number of places:

    (...) my @try = ( # search the ORACLE_HOME we're using first # --- Traditional full-install locations "$OH/rdbms/public", # prefer public over others "$OH/rdbms", "$OH/plsql", # oratypes.h sometimes here (eg HPUX 11.23 Itaniu +m Oracle 9.2.0), # --- Oracle SDK Instant Client locations "$OH/sdk/include", # --- Oracle RPM Instant Client locations "/usr/include/oracle/$client_version_full/client", # Instant C +lient for RedHat FC4 "/usr/include/oracle/$client_version_trim/client", # Instant C +lient for RedHat FC4 "/include/oracle/$client_version_full/client", # Instant Clien +t for RedHat FC3 "/include/oracle/$client_version_trim/client", # Instant Clien +t for RedHat FC3 ); unshift @try, $::opt_h if $::opt_h; @try = grep { -d $_ } @try; my %h_file; find( sub { return unless /^o(ci.{3,4}|ratypes)\.h$/i; my $dir = $File::Find::dir; $h_file{$_} ||= $dir; # record first one found print "Found $dir/$_\n" if $::opt_d; }, @try); (...)

    If none of the predefined search locations exist, the @try list passed to find() will be empty, which causes File::Find to issue the "invalid top directory" error you're seeing...

      Well, I had the SDK installed, but the files were in "sdk" not "sdk/include". Thanks for that. The make tests fail, though, so it won't install without force. However, the force option isn't working though (I think CPAN is an older version). I tried updating CPAN but, of course, that failed too. I'll keep working on it though.

      Thanks again,

Re: DBD::Oracle Install
by Anonymous Monk on May 04, 2007 at 08:27 UTC
    Remember to actually *READ* the README file! Especially if you have any problems.
Re: DBD::Oracle Install
by Mr. Muskrat (Canon) on May 04, 2007 at 18:54 UTC
    As anony monk has already pointed out, you should read the README file for DBD::Oracle. The README has a wealth of information on getting it to build, test and install. Since you've already got it building correctly, you should focus on the test portion of the document. You'll have to update the tests as appropriate for your database (DSN, SID, username, password, etc...) because the defaults will not work 99.9% of the time.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://613255]
Approved by shigetsu
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (4)
As of 2017-02-26 06:44 GMT
Find Nodes?
    Voting Booth?
    Before electricity was invented, what was the Electric Eel called?

    Results (371 votes). Check out past polls.