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

Reply via email to