On Wed, 2008-08-13 at 02:32 -0700, Debraj wrote:
> Hi
> 
> The script ( mentioned below ) works fine if I do a
> 
> setenv LD_LIBRARY_PATH /OracleProd/oracle9i/lib/
> 
> before executing the script. But if I don't do that instead put it
> within the script like :
> 
> 
> $ENV{'LD_LIBRARY_PATH'} = "/OracleProd/oracle9i/lib";
> 
> it throws this error :
> 
> DBI version is --> 1.13
> 
> install_driver(Oracle) failed: Can't load '/usr/local/bin/perl_5.6.1/
> lib/site_perl/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle:
> libclntsh.so.9.0: cannot open shared object file: No such file or
> directory at /usr/local/bin/perl_5.6.1/lib/5.6.1/i686-linux/
> DynaLoader.pm line 206.
>  at (eval 1) line 3
> Compilation failed in require at (eval 1) line 3.
> 
>  at test2.pl line 18
> 
> 
> 
> 
> the script is :
> 
> #!/usr/local/bin/perl
> use File::Find;
> 
> # All Perl DBI scripts must have this line
> use DBI;
> #use DBD::Oracle qw(:ora_types);
> #use DBD::Oracle;
> 
> # Database Connection stuff
> $ENV{'ORACLE_HOME'}="/OracleProd/oracle9i";
> $ENV{'LD_LIBRARY_PATH'} = "/OracleProd/oracle9i/lib";
> 
> print "DBI version is --> $DBI::VERSION\n\n";
> 
> $u = "ask";
> $p = "a5k";
> 
> $dbh = DBI->
> connect("dbi:Oracle:host=ap6002fems.google.com;sid=sidddb;port=1617",
>                       $u, $p,
>                              {
>                                      RaiseError => 1,
>                                      AutoCommit => 0
>                              }
>                             )
> or die "Couldn't connect to database: " . DBI-> errstr;
> 
> $dbh->{LongReadLen} = 512 * 1024;
> $dbh->{LongTruncOk} = 1;
> 
> 

I don't have Oracle on my machine so this is untested.

The `use DBI;` is done at compile time.  The `$ENV{...` is done at run
time, after the compile.  Try:

  BEGIN {
    $ENV{'ORACLE_HOME'}="/OracleProd/oracle9i";
    $ENV{'LD_LIBRARY_PATH'} = "/OracleProd/oracle9i/lib";
    use DBI;
  }


-- 
Just my 0.00000002 million dollars worth,
  Shawn

"Where there's duct tape, there's hope."

"Perl is the duct tape of the Internet."
        Hassan Schroeder, Sun's first webmaster


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to