Re: Use of LD_RUN_PATH in building DBD::Oracle

[email protected] (Peter Hitchman)
Newsgroups perl.dbi.users
Message-ID <[email protected]>
HI,
My first post and I forgot the basics:

OS - RedHat 4 and 5

Perl version 5.8.8

DBD::Oracle version: 1.27

Regards
Pete

On 28 January 2011 16:44, Peter Hitchman <[email protected]> wrote:

> Hi,
> I have been having problems with DBD::Oracle when I tried to use a
> different Oracle client version from the database server.
> In this case the client is 11.2.0.2.0 and the database is 11.1.0.6.0.
>
> When I set my client to the 11.2 version, the connect to the database
> failed with:
>
> "Connection to dB failed due to : ERROR OCIEnvNlsCreate. Check ORACLE_HOME
> env var, NLS settings, permissions, etc.."
>
>
>
> This is because using LD_RUN_PATH when compiling, causes the dynamic
> runtime linker to first look in the ORACLE_HOME
>
> used when Oracle.so was compiled, when executing the code. So the end
> result is a mixture of versions of the Oracle libraries being
>
> used, if the the environment is switched to another Oracle version.
>
>
> So what I found was that if I commented out the LD_RUN_PATH from the
> makefile and re-installed the module that I could connect
>
> no matter what client version I used.
>
>
> From browsing the net, it looks to me that the use of LD_RUN_PATH was
> added, but to me its use just stops easily changing Oracle clients.
>
> Does any one have any more information on this, I would like to check that
> I am not missing something else fundamental.
>
>
> Thanks
>
> Pete
>
>
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.