[Fwd: RE: :Oracle on Solaris 9/10 and Oracle 10g]




I received the following suggestion from a kind contributor:

>I believe the flag is -r=build32, the command being
>
>perl Makefile.PL -r=build32

and that option did indeed create the Makefile with the lib32 settings correctly enabled. However, I'm still running into a problem. I can only get that version to work if I set the LD_LIBRARY_PATH environment variable. We haven't done this in the past, and I'd rather not have to do it for our entire environment.

I got it working on a different machine a few months ago with DBD-Oracle-1.16, my hacked Makefile, and pointing at /oracle/product/10.2.0/db_1/lib32,
which is where the library goes on a server install.

Now, on a client install, I've tried DBD::Oracle 1.16 and 1.19, with the build32 option and with my hacked version, and I can't get it to work. I'm pointing at /oracle/product/10.2.0/client_1/lib32 and I get the below each time. Any hints on why it can find libclntsh.so.10.1 and not libnnz10.so?

->ldd blib/arch/auto/DBD/Oracle/Oracle.so
libclntsh.so.10.1 => /oracle/product/10.2.0/client_1/lib32/libclntsh.so.10.1
libkstat.so.1 => /usr/lib/libkstat.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libsocket.so.1 => /usr/lib/libsocket.so.1
libgen.so.1 => /usr/lib/libgen.so.1
libdl.so.1 => /usr/lib/libdl.so.1
libsched.so.1 => /usr/lib/libsched.so.1
libaio.so.1 => /usr/lib/libaio.so.1
librt.so.1 => /usr/lib/librt.so.1
libm.so.1 => /usr/lib/libm.so.1
libthread.so.1 => /usr/lib/libthread.so.1
libpthread.so.1 => /usr/lib/libpthread.so.1
libnnz10.so => (file not found)
libc.so.1 => /usr/lib/libc.so.1
libmp.so.2 => /usr/lib/libmp.so.2
libmd5.so.1 => /usr/lib/libmd5.so.1
/usr/platform/SUNW,Sun-Fire-480R/lib/libc_psr.so.1
/usr/platform/SUNW,Sun-Fire-480R/lib/libmd5_psr.so.1


Thanks again,
Jim

-----Original Message-----
From: Jim Brandt [mailto:cbrandt@xxxxxxxxxxx]
Sent: July 20, 2007 2:01 PM
To: dbi-users@xxxxxxxx
Subject: DBD::Oracle on Solaris 9/10 and Oracle 10g


I found some discussion with the above subject from around February 2007
and thought I'd add my experience, since I just had to compile
DBD::Oracle on one of our Solaris systems.

I found that to get the compile to properly point at the 32-bit
libraries, I had to make the following changes to the generated Makefile:

* delete all references to -xarch=v9
* change all occurrences of client_1/lib to client_1/lib32
* change all occurrences of rdbms/lib to rdbms/lib32

These changes worked on Solaris 9 and 10. I'm not sure why the 'xarch'
param causes problems. However, the libraries seem to be incorrectly
defaulting to 'lib', which is the 64-bit libraries under 10g.

I don't know if there is a flag to pass into Makefile.PL to fix this or
if the file needs to be hacked to default to the 'lib32' directory.



--
Jim Brandt
Administrative Computing Services
University at Buffalo

.



Relevant Pages

  • Re: Cannot find -lf2c compilation error
    ... I am trying to compile a program which was written in C. (The Makefile ... However, when I run the command 'make', I get the ... the directory is and modify the -L flag appropriately. ... flag specifies directories in which to search for the libraries. ...
    (Fedora)
  • Re: How do I add search paths to gcc
    ... for libraries and hearders and I added the paths ... LD_LIBRARY_PATH environment variable to set alternate ... what did the person who wrote your project's Makefile use? ... the dependency lines in a makefile are given to the shell (normally ...
    (freebsd-questions)
  • Solaris 9 C compiler cannot create executables
    ... Install KOLAB2 without problem but on Solaris 9 or 8 I have allways the same ... system SUNWbtoox CCS libraries bundled with SunOS ... system SUNWcsxu Core Solaris (Usr) ...
    (SunManagers)
  • Re: port seahorse wont upgrade properly
    ... gnome-applets everytime I do a portupgrade gnome-applets: ... checking for C compiler default output file name... ... checking if cc static flag -static works... ... checking whether the cc linker supports shared libraries... ...
    (freebsd-questions)
  • yelp install error on amd64 running freebsd 6.3
    ... checking for C compiler default output file name... ... checking for f77... ... checking if cc static flag -static works... ... checking whether the cc linker supports shared libraries... ...
    (freebsd-questions)