Hi Tim,

HP reccomendations
------------------
Concerning HP requirements, I followed most of reccomendations from Garry Ferguson
available at http://www.mail-archive.com/[EMAIL PROTECTED]/msg18687.html
The most important difference concerns the LINKTYPE of dbi and dbd. I didn't force it 
to static.

Libraries specified at link time
--------------------------------
I had to find the two libraries (-lnjni9 -ljip9) after some errors in the "make test" 
of DBD. t/cursor.....
/usr/lib/dld.sl: Unresolved symbol:
  nnftboot (plabel)  from /u01/app/oracle/product/9.2.0/lib32/libclntsh.sl.9.0
  ....
I simply followed the findSymbol script specified in README.hpux.

I'm not confident in fixing it in Makefile.PL

SHLIB_PATH and LD_LIBRARY_PATH
------------------------------
SHLIB_PATH is necessary at compile/link time
the two lib dirs in LD_LIBRARY_PATH are needed at runtime. lib is needed for 64 bits 
tools like sqlplus, lib32 is needed
by perl, compiled in 32 bits, right.

But it works.
Joël.

-----Message d'origine-----
De : Tim Bunce [mailto:[EMAIL PROTECTED]
Envoyé : mercredi 21 janvier 2004 20:07
À : [EMAIL PROTECTED]
Cc : Sean Kelly; [EMAIL PROTECTED]
Objet : Re: Can't make DBD: a solution on HP-UX 11.00 with Oracle 9i


On Wed, Jan 21, 2004 at 06:02:29PM +0100, Joel Van Boeckel wrote:
> Hi Sean,
> I had a lot of problems in order to build Oracle:DBD on HP-UX.
> I finally  ended to a very simple solution.
> - recompile perl conforming to HP requirements

What do you mean by "HP requirements"?

> - patch DBD::Oracle Makefile.PL
>
> Perhaps may this information help you in fixing the solution.

> --------------------------------------------------------
> Environment (important to specify the lib32 libraries)

In SHLIB_PATH?

> export 
> LD_LIBRARY_PATH=$ORACLE_HOME/lib32:/$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
> export SHLIB_PATH=$ORACLE_HOME/lib32

Aren't the two lib dirs in LD_LIBRARY_PATH needed for sqlplus (for example)
to work correctly?

> --------------------------------------------------------
> Building perl with nothread
> --------------------------------------------------------
>
>       rm -f config.sh Policy.sh
>       ./Configure -Ubincompat5005 -Duselargefiles
> When asked:
>       1/ Build it "Not threaded" --> Build a threading Perl? [n]
>       2/ "What libraries to use?" then prepend with -lcl -lpthread
>           --> What libraries to use?
>               [-lnsl -lnm -lndbm -lmalloc -ldld -lm -lcrypt -lsec -lc]
>               -lcl -lpthread -lnsl -lnm -lndbm -lmalloc -ldld -lm -lcrypt -lsec -lc
>       3/ "Any additional cc flags?" then prepend with   +z +DAportable +DSPA7300
>           --> Any additional cc flags?
>               [-Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings -I/usr/local/include]
>               +z +DAportable +DSPA7300 -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings
>                       -I/usr/local/include

How and why did you determine each of those values?

> Patch Makefile.PL
>
> diff  Makefile.PL.org Makefile.PL
> 295c295
> <     $opts{LIBS} = [ "-L$OH/$libdir -l$lib $syslibs" ];
> ---
> >     $opts{LIBS} = [ "-L$OH/$libdir -lnjni9 -ljip9 -l$lib $syslibs" ];

How did you determine each of those libraries?
Did "build rule discovery" work for you?
If not, can you fix it?

Tim.

p.s. I don't know anything about HPUX so hopefully others can help out here.

Reply via email to