I think you also need to add the ORACLE_HOME directory to LD_LIBRARY_PATH (on the deployment machine) to make it work.
Cheers, -Jan On Thu, Apr 18, 2013 at 9:04 AM, John Wiersba <jrw32...@yahoo.com> wrote: > Thanks, Lyle. I'm trying to build DBD::Oracle on Linux/AIX/Solaris for > distribution to another server (assume the OS and perl versions on both > servers) which will have a different ORACLE_HOME, possibly a different > version of the Oracle client and likely in a different location. The target > server may not have a C compiler. > > That's the same situation that ActiveState must have encountered, building > DBD::Oracle with whatever version of Oracle they had downloaded and installed > in some random location, but deploying it on the user's server which likely > has a different version of Oracle installed in a different location. > > > > >>________________________________ >> From: Lyle <webmas...@cosmicperl.com> >>To: dbi-dev@perl.org >>Sent: Thursday, April 18, 2013 11:43 AM >>Subject: Re: Building DBD::Oracle with one version but deploying with another >> >> >>On 18/04/2013 16:22, John Wiersba wrote: >>> [A previous version of this question was asked on dbi-users -- I haven't >>> gotten any response there. Not sure which list to post to.] >>> >>> Hi, I'd like to find out how to build/install DBD::Oracle with one >>> version of Oracle client but then deploy it with a potentially different >>> client version, say on a server without the original client version (or >>> with it installed in a different location). It seems like the Oracle >>> client libraries can be loaded dynamically at runtime, based on >>> ORACLE_HOME, so there doesn't need to be a dependency on those exact >>> client libraries that were used at build/install time. >>> >>> Another >>> way of asking: How does ActiveState deploy DBD::Oracle without needing >>> to build it (maybe no C compiler is available), on servers with >>> different versions of the Oracle client libraries installed? >> >>I built DBD::Oracle on windows recently. I did need the Oracle client >>libraries for the tests to pass, and ActiveState would have too. Once built >>they package up the binaries for distribution, and expect the target system >>to have the appropriate libraries. If I remember correctly, I had to download >>the appropriate libraries from Oracle. I spoke to the vanilla Perl people >>about this, as they currently don't have a DBD::Oracle bundled in with their >>distro. They had been looking at bundling the client libraries as well, but I >>think there is a licensing issues surrounding doing that which is why >>ActiveState do not do it. We agreed to take another look at it next month as >>I'm very busy this month. >> >>> I've searched the archives for both dbi-dev and dbi-users and can't find >>> this issue addressed, although I did see a similar issue asked once. If >>> there's any reference material that I have overlooked, could you please >>> point it out. The README for DBD::Oracle seems to indicate that this is >>> not possible or not advised, but then what is ActiveState doing to make it >>> work? >> >>With ActiveState's ppm, it wont work on the target system unless the correct >>client libraries are there. I think that's what led me to build my own >>DBD::Oracle in the first place. I was building for 64 bit Windows, and found >>this blog post: >>http://www.pythian.com/blog/dbdoracle-and-windows-64bit/ >>I found errors in that post and commented with my findings, yet my comment >>has yet to be accepted. I think Pythian is on this list? So maybe they will >>comment. >> >> >>Lyle >> >> >> >>