I'd be grateful if you both, and everyone having problems building DBD::Oracle with recent Oracle releases, could try this:
http://homepage.eircom.net/~timbunce/DBD-Oracle-1.15-rc3-20040123.tar.gz and let me know how you get on. If you do have any problems *please* include the lg of the build (ideally created using the script command). Thank you. Tim. On Mon, Jan 26, 2004 at 08:56:13AM +0100, Joel Van Boeckel wrote: > Hi Mark, > In a preceding message, I explained how I succeeded to build DBD::Oracle with Oracle > 9i on a HP-UX system. > It seems that you encounter the same messages I encountered. > Here a copy of my solution. It's perhaps not the best one, but it works. > Jo�l. > ---------------------------------------------------------------- > ... > 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 (reccomendations from Garry Ferguson > available at http://www.mail-archive.com/[EMAIL PROTECTED]/msg18687.html ) > - patch DBD::Oracle Makefile.PL > > Perhaps may this information help you in fixing the solution. > > The final environment is : > Perl : 5.008002 (PA-RISC2.0) (32 bits) > OS : hpux (11.00) > Compiler : cc > Oracle client : SQL*Plus: Release 9.2.0.1.0 - Production > DBI : 1.38 > DBD::Oracle : 1.15 > > -------------------------------------------------------- > Environment (important to specify the lib32 libraries) > -------------------------------------------------------- > export > LD_LIBRARY_PATH=$ORACLE_HOME/lib32:/$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib > export SHLIB_PATH=$ORACLE_HOME/lib32 > export ORACLE_USERID="name/[EMAIL PROTECTED]" > echo ORACLE_SID=sid_name > > -------------------------------------------------------- > 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 > 4/ Then answer & -d to a prompt to take defaults from then on. > > make > make test > make install > > -------------------------------------------------------- > DBI DBI-1.38 > -------------------------------------------------------- > perl Makefile.PL > make > make test > make install > > -------------------------------------------------------- > DBD::Oracle --> DBD-Oracle-1.15 > -------------------------------------------------------- > 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" ]; > > > perl Makefile.PL -l > make > make test > make install > > ------------------------------------------------------- > More information : perl -V > -------------------------------------------------------- > Summary of my perl5 (revision 5.0 version 8 subversion 2) configuration: > Platform: > osname=hpux, osvers=11.00, archname=PA-RISC2.0 > uname='hp-ux panic b.11.00 u 9000800 145069681 unlimited-user license ' > config_args='-Ubincompat5005 -Duselargefiles' > hint=recommended, useposix=true, d_sigaction=define > usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef > useperlio=define d_sfio=undef uselargefiles=define usesocks=undef > use64bitint=undef use64bitall=undef uselongdouble=undef > usemymalloc=n, bincompat5005=undef > Compiler: > cc='cc', ccflags =' +z +DAportable +DSPA7300 -Ae -D_HPUX_SOURCE > -Wl,+vnocompatwarnings -I/usr/l > ocal/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 ', > optimize='+O2 +Onolimit', > cppflags='-Aa -D__STDC_EXT__ -D_HPUX_SOURCE +z +DAportable +DSPA7300 -Ae > -D_HPUX_SOURCE -Wl,+vn > ocompatwarnings -I/usr/local/include' > ccversion='B.11.11.02', gccversion='', gccosandvers='' > intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321 > d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 > ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 > alignbytes=8, prototype=define > Linker and Libraries: > ld='/usr/bin/ld', ldflags =' -L/usr/local/lib' > libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib > libs=-lcl -lpthread -lnsl -lnm -lndbm -lmalloc -ldld -lm -lcrypt -lsec -lc > perllibs=-lcl -lpthread -lnsl -lnm -lmalloc -ldld -lm -lcrypt -lsec -lc > libc=/lib/libc.sl, so=sl, useshrplib=false, libperl=libperl.a > gnulibc_version='' > Dynamic Linking: > dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-B,deferred ' > cccdlflags='+Z', lddlflags='-b +vnocompatwarnings -L/usr/local/lib' > > > Characteristics of this binary (from libperl): > Compile-time options: USE_LARGE_FILES > Built under hpux > Compiled at Jan 19 2004 13:17:12 > @INC: > /opt/perl5/lib/5.8.2/PA-RISC2.0 > /opt/perl5/lib/5.8.2 > /opt/perl5/lib/site_perl/5.8.2/PA-RISC2.0 > /opt/perl5/lib/site_perl/5.8.2 > /opt/perl5/lib/site_perl > > -------------------------------------------------------- > Jo�l, > > ----------------- > Jo�l Van Boeckel, > DMP, > [EMAIL PROTECTED] > -------------------------------------------------------- > > > -----Message d'origine----- > De : Krempasky, Mark [mailto:[EMAIL PROTECTED] > Envoy� : vendredi 23 janvier 2004 17:13 > � : Potenza, Joe; 'Tim Bunce' > Cc : '[EMAIL PROTECTED]' > Objet : RE: DBD-Oracle-1.14 and Oracle 9i > > > I've not been able to successfully compile DBD-Oracle-1.14 with our current > setup on hugo. > Solaris 8, perl 5.005_03, DBI-1.35 and various types of "cc, ld and make" > Regardless of which brand of "cc, ld and make" I use I pretty much see the > same results > compiling DBD-Oracle-1.14 against 64bit and 32bit Oracle9 libraries with our > version of perl. The below error is a common issue of old perl vrs 64bit > Oracle9 libs during the make. > note that the LD_LIBRARY_PATH is not referenced during the compile, it's the > LD_RUN_PATH generated by the "perl Makefile.PL" > > LD_RUN_PATH="/app/oracle9/lib:/app/oracle9/rdbms/lib" cc -o > blib/arch/auto/DBD/Oracle/Oracle.so -G Oracle.o dbdimp.o oci7.o oci8.o > -L/opt/SUNWcluster/lib -R/opt/SUNWcluster/lib -o build > -L/app/oracle9/rdbms/lib/ -L/app/oracle9/lib/ -lclntsh -lnbeq9 -lnhost9 > -lnus9 -lnldap9 -lldapclnt9 -lnsslb9 -lnnis9 -lnoname9 -lntcp9 -lntcps9 > -lnsslb9 -lntcp9 -lntns9 -lnsl -lsocket -lgen -ldl -R/app/oracle9/lib -laio > -lposix4 -lkstat -lm -lthread > ld: fatal: file /app/oracle9/lib//libclntsh.so: wrong ELF class: ELFCLASS64 > ld: fatal: File processing errors. No output written to build > *** Error code 1 > make: Fatal error: Command failed for target > `blib/arch/auto/DBD/Oracle/Oracle.so' > > So the work around to the 64bit lib error is to modify the Makefile and > change every instance of "/app/oracle9/lib to /app/oracle9/lib32" so make > compiles against the 32bit oracle9 libs. > > After making the changes and running make the > `blib/arch/auto/DBD/Oracle/Oracle.so' is still not created in the DBD source > dir and the make bombs out. > > LD_RUN_PATH="/app/oracle9/lib32:/app/oracle9/rdbms/lib" cc -o > blib/arch/auto/DBD/Oracle/Oracle.so -G Oracle.o dbdimp.o oci7.o oci8.o > -L/opt/SUNWcluster/lib -R/opt/SUNWcluster/lib -o build > -L/app/oracle9/rdbms/lib/ -L/app/oracle9/lib32/ -lclntsh -lnbeq9 -lnhost9 > -lnus9 -lnldap9 -lldapclnt9 -lnsslb9 -lnnis9 -lnoname9 -lntcp9 -lntcps9 > -lnsslb9 -lntcp9 -lntns9 -lnsl -lsocket -lgen -ldl -R/app/oracle9/lib32 > -laio -lposix4 -lkstat -lm -lthread > chmod 755 blib/arch/auto/DBD/Oracle/Oracle.so > chmod: WARNING: can't access blib/arch/auto/DBD/Oracle/Oracle.so > *** Error code 1 > make: Fatal error: Command failed for target > `blib/arch/auto/DBD/Oracle/Oracle.so' > > I'm pretty well stumped, the only thing I can think of to try next is find > another development system with Oracle9, perl 5.6.0 or newer, "gnu gcc, make > and ld" and start from scratch. > But I'm definitely up for any input on trying to get this to work in our > current environment. > > Mark. > > -----Original Message----- > From: Potenza, Joe > Sent: Friday, January 23, 2004 8:19 AM > To: 'Tim Bunce'; Potenza, Joe; Krempasky, Mark > Cc: '[EMAIL PROTECTED]' > Subject: RE: DBD-Oracle-1.14 and Oracle 9i > > > I apologize for the lack of detail at this time. One of my co-workers was > attempting the compile and did some searching on google. I mainly wanted to > find out if DBD-Oracle-1.14 would work with Oracle9i before pursuing the > issue any further. > > Mark K., > > Can you reply to this email with detail on the compilation errors you were > getting. Thanks. > > Joe Potenza > > -----Original Message----- > From: Tim Bunce [mailto:[EMAIL PROTECTED] > Sent: Friday, January 23, 2004 2:48 AM > To: Potenza, Joe > Cc: '[EMAIL PROTECTED]' > Subject: Re: DBD-Oracle-1.14 and Oracle 9i > > On Thu, Jan 22, 2004 at 05:21:02PM -0700, Potenza, Joe wrote: > > Has anyone been able to compile DBD-Oracle-1.14 with Oracle9i under > > Solaris8? > > Have you been able to use google to find out? > > Tim. > >
