Can't spell.... -----Original Message----- From: Stevenson, Jonathan Sent: 27 March 2002 11:31 To: '[EMAIL PROTECTED]' Cc: '[EMAIL PROTECTED]' Subject: RE: Error on make for DBD-Oracle 1.12 on HPUX 11.0
Hi Lincoln, Thanks for your help with this. We now have a working installation, although we still do have some issues to resolve still. The problem seems to be the libjava.sl library. Running the make test step generated this message: Can't shl_load() a library containing Thread Local Storage. We have got round this by setting the LD_PRELOAD to point to the library - $ORACLE_HOME/JRE/lib/PA_RISC/native_threads/libjava.sl. The make test passes OK, and make install works. My DBI test script is able to do some basic stuff, so presumably it is OK. There are some problems remaining with it, though. You have to set the LD_PRELOAD variable before running any perl against Oracle (as I guess the library does not get built into the DBD). We have also noticed that if you set LD_PRELOAD as above, then run swlist, the system coredumps (swlist works normally without this set). This worries me, as it may cause other commands to coredump, so we will need to try to extensively roadtest this before we can move into production. The libjava.sl library is only required for an advanced authentication module that we do not use, so we are hoping that we can remove this from our Oracle installation, and get around the problem this way. We did manage to install DBD on one of our boxes before Xmas without this problem, so we know that it can be done, we have just lost the recipe that we need. If anyone has any suggestions that we could try, we would be grateful. It is also worth noting that this error was what hung us up trying to get gcc to work, so with this option, we may be able to push forward on this. We will give it a go on another box, and post if we get any joy from this. I have included the recipe that we have used below. This does produce a working build, we are just a little concerned about the side effects. Cheers, Jon Machine specs: HPUX 11.00 Oracle 8.1.6 client HP ANSI C compiler (B.11.02.03) Downloaded: Perl 5.6.1 From http://www.cpan.org/src/index.html (Stable release) DBI 1.21 From http://search.cpan.org/search?dist=DBI DBD:Oracle 1.12 From http://search.cpan.org/search?module=DBD::Oracle Create /tmp/perl temporary area and extract tar files Install Perl cd /tmp/perl/perl-5.6.1 ../Configure -Ubincompat5005 Prepend additional libraries with "-lcl -lpthread" Prepend cc flags with "+z" make make test make install Install DBI cd /tmp/perl/DBI-1.21 perl Makefile.PL make make test make install Install DBD:Oracle Set the Oracle environment export ORACLE_HOME=/oracle/app/oracle/product/8.1.6 export SHLIB_PATH=/usr/lib:/oracle/app/oracle/product/8.1.6/lib export ORACLE_SID=sid export ORACLE_USERID=userid/password@sid export LD_LIBRARY_PATH=/oracle/app/oracle/product/8.1.6/lib export LD_PRELOAD=/oracle/app/oracle/product/8.1.6/JRE/lib/PA_RISC/native_threads/libjava.sl # Need to prevent libjava.sl TLS error - need to do this for runtime as well cd /tmp/perl/DBD-Oracle-1.12 perl Makefile.PL cat Makefile | sed 's/PERL_DL_NONLAZY=1/PERL_DL_NONLAZY=0/g' > Makefile.tmp # Need to force load of all libraries mv Makefile.tmp Makefile make make test make install
