On Thu, Dec 29, 2005 at 05:56:51PM +0000, Tim Bunce wrote:
> > 
> > This is easily fixed by using
> > 
> >     LD_LIBRARY_PATH=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib
> 
> I was presuming that people would have that already.

People who install the software from rpm tend to expect that all the
necessary dependencies are resolved for them, without any additional
runtime settings.

> > when running that make test, and better yet, by using
> > 
> >     LD_RUN_PATH=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib
> > 
> > (or equivalent) when making the library.
> 
> Yes, having the Makefile set LD_RUN_PATH for the link would suit most
> people most of the time.

And indeed, the LD_RUN_PATH is set in the Makefile by
ExtUtils::MakeMaker, it just seems to have no effect on the $(LD)
section. Anybody knows why the LD_RUN_PATH value is not used? Of
course, forcing it thru using

        -Wl,-rpath,/usr/lib/oracle/xe/...

works but I assume it might break non-Linux (non-gcc) installations.

> > Since the oracle-xe .rpm provided by Oracle does not come with
> > /etc/ld.so.conf.d/oracle* file which would include the library
> > directory via the ld.so.cache mechanism, I think using LD_RUN_PATH
> > while making DBD::Oracle with Oracle XE (but the same holds for
> > other situations) would be nice.
> 
> I agree.
> 
> > Alternatively, would setting
> > 
> >     $ENV{'LD_LIBRARY_PATH'} ||= "$ORACLE_HOME/lib"
> > 
> > in Oracle.pm in the runtime be a way to go?
> 
> I believe it's too late by then (but do try it).

You're right.

-- 
------------------------------------------------------------------------
 Honza Pazdziora | [EMAIL PROTECTED] | http://www.fi.muni.cz/~adelton/
 .project: Perl, mod_perl, DBI, Oracle, large Web systems, XML/XSL, ...
                Only self-confident people can be simple.

Reply via email to