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]

Reply via email to