Hi All,
I am trying to compile Oracle::OCI and I am getting errors during 'make
test'.
Below is the output of 'boot -all'.
./boot -all
v-string in use/require non-portable at ./boot line 3.
Regex for h2xs ignores:
^OCI(?!AttrGet|EnvCallback|SharedLibInit|StmtBindByName|StmtBindByPos|StmtGetBindInfo|TypeArrayByName|TypeArrayByRef|_FLAGS|_ORACLE)|^SQL
Complete h2xs arguments: ./h2xs -d -O -n Oracle::OCI -F
-I/u01/app/oracle/product/8.1.7/rdbms/demo
-I/u01/app/oracle/product/8.1.7/rdbms/public
-I/u01/app/oracle/product/8.1.7/network/public
-I/u01/app/oracle/product/8.1.7/plsql/public
-I/u01/app/oracle/product/8.1.7/rdbms/demo,/u01/app/oracle/product/8.1.7/rdbms/public,/u01/app/oracle/product/8.1.7/network/public,/u01/app/oracle/product/8.1.7/plsql/public
-E get_oci_error,get_oci_handle,oci_buf_len,OCIAttrGet -M
'^OCI(?!AttrGet|EnvCallback|SharedLibInit|StmtBindByName|StmtBindByPos|StmtGetBindInfo|TypeArrayByName|TypeArrayByRef|_FLAGS|_ORACLE)|^SQL'
-k -x /u01/app/oracle/product/8.1.7/rdbms/demo/oci.h
Running h2xs...
Scanning typemaps...
Scanning /usr/local/perl5.8/lib/5.8.0/ExtUtils/typemap
Scanning /u01/app/oracle/product/8.1.7/rdbms/demo/oci.h for functions...
Scanning /u01/app/oracle/product/8.1.7/rdbms/demo/oci.h for typedefs...
Writing Oracle/OCI/OCI.pm
Writing Oracle/OCI/OCI.xs
Writing Oracle/OCI/typemap
Skipped further expansion of type 'void ( * client_callback ) ( void *
client_context, enum OCIObjectEvent event, void * object )'
Skipped further expansion of type 'void ( * client_callback ) ( void *
client_context, enum OCIObjectEvent event, void * object )'
Skipped further expansion of type 'void ( * client_callback ) ( void *
client_context, enum OCIObjectEvent event, void * object )'
Writing Oracle/OCI/Makefile.PL
Writing Oracle/OCI/test.pl
Writing Oracle/OCI/Changes
Writing Oracle/OCI/MANIFEST
Editing OCI.xs...
Editing Makefile.PL...
Building...
Using DBI 1.30 installed in
/usr/local/perl5.8/lib/site_perl/5.8.0/sun4-solaris-thread-multi/auto/DBI
Checking if your kit is complete...
Looks good
Writing Makefile for Oracle::OCI
cp OCI.pm blib/lib/Oracle/OCI.pm
AutoSplitting blib/lib/Oracle/OCI.pm (blib/lib/auto/Oracle/OCI)
/usr/local/perl5.8/bin/perl
/usr/local/perl5.8/lib/5.8.0/ExtUtils/xsubpp -typemap
/usr/local/perl5.8/lib/5.8.0/ExtUtils/typemap -typemap h2xs.typemap
-typemap typemap OCI.xs > OCI.xsc && mv OCI.xsc OCI.c
Please specify prototyping behavior for OCI.xs (see perlxs manual)
gcc -c -I/u01/app/oracle/product/8.1.7/rdbms/demo
-I/u01/app/oracle/product/8.1.7/rdbms/public
-I/u01/app/oracle/product/8.1.7/network/public
-I/u01/app/oracle/product/8.1.7/plsql/public
-I/usr/local/perl5.8/lib/site_perl/5.8.0/sun4-solaris-thread-multi/auto/DBD/Oracle
-I/usr/local/perl5.8/lib/site_perl/5.8.0/sun4-solaris-thread-multi/auto/DBI
-D_REENTRANT -DSOCKS -fno-strict-aliasing -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -g -DVERSION=\"0.01\" -DXS_VERSION=\"0.01\"
-fPIC "-I/usr/local/perl5.8/lib/5.8.0/sun4-solaris-thread-multi/CORE"
-I/u01/app/oracle/product/8.1.7/rdbms/demo OCI.c
OCI.xs: In function `constant_OCI_LOB':
OCI.xs:4270: warning: decimal constant is so large that it is unsigned
extra.xsh: In function `XS_Oracle__OCI_oci_buf_len':
extra.xsh:51: warning: assignment from incompatible pointer type
extra.xsh:52: warning: assignment from incompatible pointer type
gcc -c -I/u01/app/oracle/product/8.1.7/rdbms/demo
-I/u01/app/oracle/product/8.1.7/rdbms/public
-I/u01/app/oracle/product/8.1.7/network/public
-I/u01/app/oracle/product/8.1.7/plsql/public
-I/usr/local/perl5.8/lib/site_perl/5.8.0/sun4-solaris-thread-multi/auto/DBD/Oracle
-I/usr/local/perl5.8/lib/site_perl/5.8.0/sun4-solaris-thread-multi/auto/DBI
-D_REENTRANT -DSOCKS -fno-strict-aliasing -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -g -DVERSION=\"0.01\" -DXS_VERSION=\"0.01\"
-fPIC "-I/usr/local/perl5.8/lib/5.8.0/sun4-solaris-thread-multi/CORE"
-I/u01/app/oracle/product/8.1.7/rdbms/demo utility.c
Running Mkbootstrap for Oracle::OCI ()
chmod 644 OCI.bs
rm -f blib/arch/auto/Oracle/OCI/OCI.so
LD_RUN_PATH="/u01/app/oracle/product/8.1.7/lib:/usr/lib" gcc -G
-L/usr/local/lib OCI.o utility.o
/u01/app/oracle/product/8.1.7/rdbms/lib/ssdbaed.o
/u01/app/oracle/product/8.1.7/rdbms/lib/defopt.o
/u01/app/oracle/product/8.1.7/rdbms/lib/kpuadef.o -o
blib/arch/auto/Oracle/OCI/OCI.so -L/u01/app/oracle/product/8.1.7/lib/
-lclntsh -lnbeq8 -lnhost8 -lnus8 -lnldap8 -lldapclnt8 -lnsslb8 -lnnis8
-ln8 -lncrypt8 -ln8 -lncrypt8 -lnoname8 -lntcp8 -lntcps8 -lnsslb8
-lnent8 -lntcp8 -lntns8 -lnsgr8 -lnzjs8 -ln8 -lnl8 -lnro8 -lnbeq8
-lnhost8 -lnus8 -lnldap8 -lldapclnt8 -lnsslb8 -lnnis8 -ln8 -lncrypt8
-ln8 -lncrypt8 -lnoname8 -lntcp8 -lntcps8 -lnsslb8 -lnent8 -lntcp8
-lntns8 -lnsgr8 -lnzjs8 -ln8 -lnl8 -lclient8 -lvsn8 -lwtc8 -lcommon8
-lgeneric8 -lwtc8 -lmm -lnls8 -lcore8 -lnls8 -lcore8 -lnls8 -lnbeq8
-lnhost8 -lnus8 -lnldap8 -lldapclnt8 -lnsslb8 -lnnis8 -ln8 -lncrypt8
-ln8 -lncrypt8 -lnoname8 -lntcp8 -lntcps8 -lnsslb8 -lnent8 -lntcp8
-lntns8 -lnsgr8 -lnzjs8 -ln8 -lnl8 -lnro8 -lnbeq8 -lnhost8 -lnus8
-lnldap8 -lldapclnt8 -lnsslb8 -lnnis8 -ln8 -lncrypt8 -ln8 -lncrypt8
-lnoname8 -lntcp8 -lntcps8 -lnsslb8 -lnent8 -lntcp8 -lntns8 -lnsgr8
-lnzjs8 -ln8 -lnl8 -lclient8 -lvsn8 -lwtc8 -lcommon8 -lgeneric8 -ltrace8
-lnls8 -lcore8 -lnls8 -lcore8 -lnls8 -lclient8 -lvsn8 -lwtc8 -lcommon8
-lgeneric8 -lnls8 -lcore8 -lnls8 -lcore8 -lnls8 -lnsl -lsocket -lgen
-ldl -lsched -lsched -R/u01/app/oracle/product/8.1.7/lib -laio -lposix4
-lkstat -lm -lthread
chmod 755 blib/arch/auto/Oracle/OCI/OCI.so
cp OCI.bs blib/arch/auto/Oracle/OCI/OCI.bs
chmod 644 blib/arch/auto/Oracle/OCI/OCI.bs
Manifying blib/man3/Oracle::OCI.3
PERL_DL_NONLAZY=1 /usr/local/perl5.8/bin/perl "-MExtUtils::Command::MM"
"-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01base....dubious
Test returned status 0 (wstat 11, 0xb)
DIED. FAILED tests 28-39
Failed 12/39 tests, 69.23% okay
t/05dbi.....ok 2/80DBD::Oracle::db do failed: ORA-00955: name is already
used by an existing object (DBD ERROR: OCIStmtExecute) at t/05dbi.t line
40.
Unexpectedly had to drop old test table 'oracle_oci_test__drop_me'
t/05dbi.....dubious
Test returned status 0 (wstat 11, 0xb)
DIED. FAILED tests 10-80
Failed 71/80 tests, 11.25% okay
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/01base.t 0 11 39 12 30.77% 28-39
t/05dbi.t 0 11 80 71 88.75% 10-80
Failed 2/2 test scripts, 0.00% okay. 83/119 subtests failed, 30.25%
okay.
*** Error code 2
make: Fatal error: Command failed for target `test_dynamic'
My environment is:
% perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration:
Platform:
osname=solaris, osvers=2.8, archname=sun4-solaris-thread-multi
uname='sunos pillar2 5.8 generic_108528-14 sun4u sparc
sunw,ultraax-mp '
config_args=''
hint=previous, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-D_REENTRANT -DSOCKS -fno-strict-aliasing
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O',
cppflags='-D_REENTRANT -DSOCKS -fno-strict-aliasing -D_REENTRANT
-DSOCKS -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
ccversion='', gccversion='3.2', gccosandvers='solaris2.8'
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='gcc', ldflags =' -L/usr/local/lib '
libpth=/usr/local/lib /usr/lib /usr/ccs/lib
libs=-lsocket -lnsl -ldl -lm -lrt -lpthread -lc
perllibs=-lsocket -lnsl -ldl -lm -lrt -lpthread -lc
libc=/lib/libc.so, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' -R
/usr/local/perl5.8/lib/5.8.0/sun4-solaris-thread-multi/CORE'
cccdlflags='-fPIC', lddlflags='-G -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES
PERL_IMPLICIT_CONTEXT
Built under solaris
Compiled at Oct 30 2002 11:35:50
@INC:
/usr/local/perl5.8/lib/5.8.0/sun4-solaris-thread-multi
/usr/local/perl5.8/lib/5.8.0
/usr/local/perl5.8/lib/site_perl/5.8.0/sun4-solaris-thread-multi
/usr/local/perl5.8/lib/site_perl/5.8.0
/usr/local/perl5.8/lib/site_perl
% SunOS host 5.8 Generic_108528-14 sun4u sparc SUNW,UltraAX-MP
Can anyone make any recommendations?
--
Ron Reidy
Oracle DBA