Dear Sir, I've used your DBI-1.38 and DBD-Oracle-1.14 on AIX 4.3, Oracle Database 8.1.7 without any problems (except for the perl shipped with that ancient AIX, but that's another story). Now the machine was upgraded: got AIX 5.2 with perl 5.8.0 and Oracle Database 9.2.0 and DBI installs without notice, but DBD-Oracle aborts with som linking problems about Oracle.so The same is produced on a Sun UltraSparc 10 with Solaris 9, perl 5.6.1 - here is the log file of the install of DBD-1.12 ('cause CPAN says this had been tested on Solaris): perl -V
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration: Platform: osname=solaris, osvers=2.9, archname=sun4-solaris-64int uname='sunos localhost 5.9 sun4u sparc sunw,ultra-1' config_args='' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef use64bitint=define use64bitall=undef uselongdouble=undef Compiler: cc='cc', ccflags ='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-xO3 -xdepend', cppflags='' ccversion='Sun WorkShop', gccversion='', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=87654321 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, usemymalloc=n, prototype=define Linker and Libraries: ld='cc', ldflags ='' libpth=/lib /usr/lib /usr/ccs/lib libs=-lsocket -lnsl -ldl -lm -lc perllibs=-lsocket -lnsl -ldl -lm -lc libc=/lib/libc.so, so=so, useshrplib=true, libperl=libperl.so Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-R /usr/perl5/5.6.1/lib/sun4-solaris-64int/CORE' cccdlflags='-KPIC', lddlflags='-G' Characteristics of this binary (from libperl): Compile-time options: USE_64_BIT_INT USE_LARGE_FILES Locally applied patches: 9676 Port the OpenBSD glob() security patch 9678 Addendum to #9676: some missing changes from OpenBSD glob.c 9679 Up $File::Glob::VERSION, add OpenBSD glob version note 9693 $VERSION and Version() on same line provokes CPAN.pm warning 9706 #7210 broke .packlist generation 9707 ExtUtils::Installed doesn't quote regex metacharacters in paths 9775 Typo in utf8.h 9950 Revert integration of #8254,#8255 in #8620 (causes coredump) 10021 Insecure regexes 10091 $ref1 == $ref2 behaves unpredictably if not NV_PRESERVES_UV 10093 Incorrect line numbers in AutoSplit 10100 [20010514.027] PL_last_in_gv may not be GV if stale filehandle 10145 [20010515.004] Segfaults from premature GC 10203 Don't think about UTF8 10250 [20010422.005] perl -e '{s//${}/; //}' segfaults 10394 Leakage of file scope lexicals into predeclared subroutines 10404 eval.t was relying on pre-#10394 buggy behavior 10412 Rationalize locale handling to fix bugs uncovered by #10394 10422 Potential buffer overrun if the radix separator > 1 byte 10448 Lexicals outside eval weren't resolved correctly pre-#10394 10450 Optimize #10448 slightly 10543 Add LC_MESSAGES constant to POSIX module 10667 #10449 broke visibility of lexicals inside DB::DB() 10739 C<eval "/x$\r\n/x"> fails to compile correctly 10939 Proposed fix for Pod::Man 11169 Doc patch for Tie::Hash 11374 Make h2ph grok ccsymbols fo the form 1234L, 1234ULL etc 11427 t/harness wasn't picking up all the tests 11428 run/runenv.t needs fflushNULL sanity 11431 pod/*.t tests not picked up by t/TEST either 11510 eval 'format foo=' would loop indefinitely 11713 UTF8 wasn't printing for PVMGs 11716 UTF8 flag should be meaningful only when POK 11808 [20010831.002] Bug in Term::Cap on Solaris ansi terminal 11847 Typo in perl_clone() code causes local(*foo) breakage 12005 [20010912.007] substr reference core dump 12024 Fix local() precedence bug in #8311 12303 Fix 'local $!=0;undef*STDOUT;' segfault 12304 Pod::Html makes a poor guess at author 12350 Typo in IO::Seekable doc 12496 Carp::shortmess_heavy() doesn't notice trailing newline 12549 readline() doesn't work with 'our' variables 12550 #12549 wasn't aware of strictures 12752 croak(Nullch) wasn't printing the contents of ERRSV 12811 [20011101.069] \stat('.') gives 'free unref scalar' error 12812 Slight modification of #12811 13149 Integrate #13147 from mainline (fixes nit in #10091) 13261 Integrate #8340,#13260 from mainline Built under solaris Compiled at Apr 6 2002 14:45:34 @INC: /usr/perl5/5.6.1/lib/sun4-solaris-64int /usr/perl5/5.6.1/lib /usr/perl5/site_perl/5.6.1/sun4-solaris-64int /usr/perl5/site_perl/5.6.1 /usr/perl5/site_perl /usr/perl5/vendor_perl/5.6.1/sun4-solaris-64int /usr/perl5/vendor_perl/5.6.1 /usr/perl5/vendor_perl . make realclean rm -f blib/script/ora_explain rm -rf Oracle.c Oracle.xsi dll.base dll.exp sqlnet.log libOracle.def ora_explain mk.pm ./blib Makefile.aperl blib/arch/auto/DBD/Oracle/extralibs.all perlmain.c mon.out core core.*perl.*.? *perl.core so_locations pm_to_blib *.o *.a perl.exe Oracle.bs Oracle.bso Oracle.def Oracle.exp mv Makefile Makefile.old > /dev/null 2>&1 rm -rf blib/lib/auto/DBD/Oracle blib/arch/auto/DBD/Oracle rm -f blib/arch/auto/DBD/Oracle/Oracle.so blib/arch/auto/DBD/Oracle/Oracle.bs rm -f blib/arch/auto/DBD/Oracle/Oracle.a rm -f blib/lib/oraperl.ph blib/lib/DBD/Oracle.pm blib/arch/auto/DBD/Oracle/dbdimp.h rm -f blib/arch/auto/DBD/Oracle/mk.pm blib/arch/auto/DBD/Oracle/ocitrace.h rm -f blib/arch/auto/DBD/Oracle/Oracle.h blib/lib/Oraperl.pm rm -rf Makefile Makefile.old perl Makefile.PL Using DBI 1.38 installed in /usr/perl5/site_perl/5.6.1/sun4-solaris-64int/auto/DBI Configuring DBD::Oracle ... >>> Remember to actually *READ* the README file! Especially if you have any problems. Using Oracle in /u01/app/oracle/product/9.2.0 Found header files in rdbms/demo. Found /u01/app/oracle/product/9.2.0/rdbms/demo/demo_rdbms.mk Found /u01/app/oracle/product/9.2.0/otrace/demo/atmoci.mk Using /u01/app/oracle/product/9.2.0/rdbms/demo/demo_rdbms.mk Reading /u01/app/oracle/product/9.2.0/rdbms/demo/demo_rdbms.mk. Reading /u01/app/oracle/product/9.2.0/rdbms/lib/env_rdbms.mk. Appending '/u01/app/oracle/product/9.2.0/rdbms/lib/libskgxpd.a /u01/app/oracle/product/9.2.0/rdbms/lib/libskgxpu.a /u01/app/oracle/product/9.2.0/rdbms/lib/libskgxpt.a' to EXTRALIBS Appending '$(LIBHOME)libskgxp9.so' to SHLIBS Appending '/u01/app/oracle/product/9.2.0/rdbms/lib/libskgxp9.a' to LIBS Appending '/u01/app/oracle/product/9.2.0/rdbms/lib/libskgxns.a /u01/app/oracle/product/9.2.0/rdbms/lib/libskgxnd.a /u01/app/oracle/product/9.2.0/rdbms/lib/libskgxnr.a' to EXTRALIBS Appending '$(LIBHOME)libskgxn9.so' to SHLIBS Appending '/u01/app/oracle/product/9.2.0/rdbms/lib/libskgxn9.a' to LIBS Evaluating `cat $(LIBHOME)sysliblist` expanded `cat /u01/app/oracle/product/9.2.0/lib/sysliblist` returned '-lnsl -lsocket -lgen -ldl' Attempting to discover Oracle OCI build rules... cc -c DBD_ORA_OBJ.c Oracle oci build command: echo -L/opt/SUNWcluster/lib -R/opt/SUNWcluster/lib -o build -L/u01/app/oracle/product/9.2.0/rdbms/lib/ -L/u01/app/oracle/product/9.2.0/lib/ -o DBD_ORA_EXE DBD_ORA_OBJ.o -lclntsh `cat /u01/app/oracle/product/9.2.0/lib/ldflags` `cat /u01/app/oracle/product/9.2.0/lib/sysliblist` -R/u01/app/oracle/product/9.2.0/lib -laio -lposix4 -lkstat -lm -lthread -L/opt/SUNWcluster/lib -R/opt/SUNWcluster/lib -o build -L/u01/app/oracle/product/9.2.0/rdbms/lib/ -L/u01/app/oracle/product/9.2.0/lib/ -o DBD_ORA_EXE DBD_ORA_OBJ.o -lclntsh -lnbeq9 -lnhost9 -lnus9 -lnldap9 -lldapclnt9 -lnsslb9 -lnnis9 -lnoname9 -lntcp9 -lntcps9 -lnsslb9 -lntcp9 -lntns9 -lnsl -lsocket -lgen -ldl -R/u01/app/oracle/product/9.2.0/lib -laio -lposix4 -lkstat -lm -lthread Unable to interpret Oracle oci build commands. Using fallback approach. System: perl5.006001 sunos localhost 5.9 sun4u sparc sunw,ultra-1 Compiler: cc -xO3 -xdepend -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 Linker: /usr/ccs/bin/ld Sysliblist: -lnsl -lsocket -lgen -ldl Oracle makefiles would have used these definitions but we override them: CC: cc CFLAGS: $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\ $(SHARED_CFLAG) $(USRFLAGS) [$(GFLAG) -xO3 $(CDEBUG) -Xa $(PROFILE) -xstrconst -dalign -xF $(XS) $(MR) -xildoff -errtags=yes -v -xarch=v9 -xchip=ultra3 -W2,-AKNR_S -Wd,-xsafe=unboundsym -Wc,-Qiselect-funcalign=32 -xcode=abs44 -Wc,-Qgsched-trace_late=1 -Wc,-Qgsched-T5 -xalias_level=weak -D_REENTRANT -DSS_64BIT_SERVER -DBIT64 -DMACHINE64 -K PIC -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/public -I/u01/app/oracle/product/9.2.0/plsql/public -I/u01/app/oracle/product/9.2.0/network/public -DSLMXMX_ENABLE -DSLTS_ENABLE -D_SVID_GETTOD -D_REENTRANT $(LPFLAGS) $(USRFLAGS)] build: $(LDCCOM) $(LIBPATH) -o $(EXE) $(OBJS) $(SHARED_LDCLIENTLIBS) $(LLIBTHREAD) Evaluating `cat $(LIBHOME)ldflags` expanded `cat /u01/app/oracle/product/9.2.0/lib/ldflags` returned '-lnbeq9 -lnhost9 -lnus9 -lnldap9 -lldapclnt9 -lnsslb9 -lnnis9 -lnoname9 -lntcp9 -lntcps9 -lnsslb9 -lntcp9 -lntns9 ' expanded `cat /u01/app/oracle/product/9.2.0/lib/sysliblist` [ $(ADE_DEL_FILE_CMD) $(PURELINK) $(PURIFY) $(PURECOV) $(QUANTIFY) cc $(GFLAG) -Xa $(PROFILE) -xstrconst -dalign -xF $(XS) $(MR) -xildoff -errtags=yes -v -xarch=v9 -xchip=ultra3 -W2,-AKNR_S -Wd,-xsafe=unboundsym -Wc,-Qiselect-funcalign=32 -xcode=abs44 -Wc,-Qgsched-trace_late=1 -Wc,-Qgsched-T5 -xalias_level=weak -D_REENTRANT -DSS_64BIT_SERVER -DBIT64 -DMACHINE64 -K PIC -L/opt/SUNWcluster/lib -R/opt/SUNWcluster/lib -o $@ -L/u01/app/oracle/product/9.2.0/rdbms/lib/ -L$(LIBHOME) $(LIBPATH) -o $(EXE) $(OBJS) -lclntsh -lnbeq9 -lnhost9 -lnus9 -lnldap9 -lldapclnt9 -lnsslb9 -lnnis9 -lnoname9 -lntcp9 -lntcps9 -lnsslb9 -lntcp9 -lntns9 $(EXPDLIBS) $(EXOSLIBS) -lnsl -lsocket -lgen -ldl -R/u01/app/oracle/product/9.2.0/lib -laio $(THREADLIBS) -lposix4 -lkstat -lm $(USRLIBS) -lthread] LDFLAGS: -o $@ $(LDPATHFLAG)$(PRODLIBHOME) $(LDPATHFLAG)$(LIBHOME) [-o $@ -L/u01/app/oracle/product/9.2.0/rdbms/lib/ -L$(LIBHOME)] Linking with /u01/app/oracle/product/9.2.0/rdbms/lib/defopt.o -lclntsh -lnsl -lsocket -lgen -ldl -R/u01/app/oracle/product/9.2.0/lib -laio -lposix4 -lkstat -lm -lthread [from $(DEF_OPT) $(OCISHAREDLIBS)] Checking if your kit is complete... Looks good LD_RUN_PATH=/u01/app/oracle/product/9.2.0/lib Using DBD::Oracle 1.12. Using DBI 1.38 installed in /usr/perl5/site_perl/5.6.1/sun4-solaris-64int/auto/DBI Writing Makefile for DBD::Oracle *** If you have problems... read all the log printed above, and the README and README.help files. (Of course, you have read README by now anyway, haven't you?) make cp oraperl.ph blib/lib/oraperl.ph cp Oracle.pm blib/lib/DBD/Oracle.pm cp mk.pm blib/arch/auto/DBD/Oracle/mk.pm cp dbdimp.h blib/arch/auto/DBD/Oracle/dbdimp.h cp ocitrace.h blib/arch/auto/DBD/Oracle/ocitrace.h cp Oracle.h blib/arch/auto/DBD/Oracle/Oracle.h cp Oraperl.pm blib/lib/Oraperl.pm /bin/sh -c true /bin/sh -c true /usr/bin/perl -p -e "s/~DRIVER~/Oracle/g" /usr/perl5/site_perl/5.6.1/sun4-solaris-64int/auto/DBI/Driver.xst > Oracle.xsi /usr/bin/perl -I/usr/perl5/5.6.1/lib/sun4-solaris-64int -I/usr/perl5/5.6.1/lib /usr/perl5/5.6.1/lib/ExtUtils/xsubpp -typemap /usr/perl5/5.6.1/lib/ExtUtils/typemap Oracle.xs > Oracle.xsc && mv Oracle.xsc Oracle.c cc -c -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/public -I/u01/app/oracle/product/9.2.0/plsql/public -I/u01/app/oracle/product/9.2.0/network/public -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/usr/perl5/site_perl/5.6.1/sun4-solaris-64int/auto/DBI -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -xO3 -xdepend -DVERSION=\"1.12\" -DXS_VERSION=\"1.12\" -KPIC -I/usr/perl5/5.6.1/lib/sun4-solaris-64int/CORE Oracle.c cc -c -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/public -I/u01/app/oracle/product/9.2.0/plsql/public -I/u01/app/oracle/product/9.2.0/network/public -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/usr/perl5/site_perl/5.6.1/sun4-solaris-64int/auto/DBI -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -xO3 -xdepend -DVERSION=\"1.12\" -DXS_VERSION=\"1.12\" -KPIC -I/usr/perl5/5.6.1/lib/sun4-solaris-64int/CORE dbdimp.c cc -c -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/public -I/u01/app/oracle/product/9.2.0/plsql/public -I/u01/app/oracle/product/9.2.0/network/public -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/usr/perl5/site_perl/5.6.1/sun4-solaris-64int/auto/DBI -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -xO3 -xdepend -DVERSION=\"1.12\" -DXS_VERSION=\"1.12\" -KPIC -I/usr/perl5/5.6.1/lib/sun4-solaris-64int/CORE oci7.c cc -c -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/public -I/u01/app/oracle/product/9.2.0/plsql/public -I/u01/app/oracle/product/9.2.0/network/public -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/u01/app/oracle/product/9.2.0/rdbms/demo -I/usr/perl5/site_perl/5.6.1/sun4-solaris-64int/auto/DBI -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -xO3 -xdepend -DVERSION=\"1.12\" -DXS_VERSION=\"1.12\" -KPIC -I/usr/perl5/5.6.1/lib/sun4-solaris-64int/CORE oci8.c Running Mkbootstrap for DBD::Oracle () chmod 644 Oracle.bs rm -f blib/arch/auto/DBD/Oracle/Oracle.so LD_RUN_PATH="/u01/app/oracle/product/9.2.0/lib" cc -G Oracle.o dbdimp.o oci7.o oci8.o /u01/app/oracle/product/9.2.0/rdbms/lib/defopt.o -o blib/arch/auto/DBD/Oracle/Oracle.so -L/u01/app/oracle/product/9.2.0/lib/ -lclntsh -lnsl -lsocket -lgen -ldl -R/u01/app/oracle/product/9.2.0/lib -laio -lposix4 -lkstat -lm -lthread *** Error code 1 ld: fatal: file /u01/app/oracle/product/9.2.0/rdbms/lib/defopt.o: wrong ELF class: ELFCLASS64 ld: fatal: File processing errors. No output written to blib/arch/auto/DBD/Oracle/Oracle.so So I think the problem is that Oracle 9.2.0 has something 'new'... Thank you, Tamás Gulácsi [EMAIL PROTECTED]