Hi,
I've successfully installed the DBI and DBD::Oracle Perl modules, but I've noticed that I can't "use DBD::Oracle;" unless my LD_LIBRARY_PATH is set in my environment before I call the Perl program that attempts to use DBD::Oracle...
# ==========================================
BEGIN {
$ENV{'ORACLE_HOME'} = '/my/oracle_home';
$ENV{'LD_LIBRARY_PATH'} = '/my/oracle_home/lib';
}
use strict;
use warnings;
use DBI;
use DBD::Oracle;
print "Hello world!\n";
# ==========================================
...produces...
# ==========================================
Can't load '/usr/perl5/5.16.2/lib/site_perl/5.16.2/sun4-solaris/auto/D
+BD/Oracle/Oracle.so' for module DBD::Oracle: ld.so.1: perl: fatal: li
+bclntsh.so.11.1: open failed: No such file or directory at /usr/perl5
+/5.16.2/lib/5.16.2/sun4-solaris/DynaLoader.pm line 190.
at ./ecm_bounce_pusher.pl line 15.
Compilation failed in require at ./test_program.pl line 8.
BEGIN failed--compilation aborted at ./test_program.pl line 8.
# ==========================================
... if LD_LIBRARY_PATH is NOT set in my environment first. However, if I *do* set LD_LIBRARY_PATH in the environment, the above code works fine.
Obviously I could make a wrapper script that sets LD_LIBRARY_PATH before invoking my above program, but I'd like to make my program as compact and self-reliant as possible (i.e. no wrapper script).
Is there anything I can do to be able to invoke DBD::Oracle without having to set LD_LIBRARY_PATH first in the environment?
---- MY STATS ----
OS: Solaris 10
Perl: 5.16
Oracle: 11.2.0.3 Instant Client
-------------------
Thanks,
Gary
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|