DBD::Oracle 1.15 fails to compile on IRIX 6.4/Oracle 7.3.4

From: Roman M. Parparov (romm_at_empire.tau.ac.il)
Date: 06/29/04


Date: 29 Jun 2004 00:44:10 -0700

After reading and rereading all the Readmes, I decided to ask the group.

Yes, I know my Oracle is OLD, but I am stuck with it.
I built my perl (5.8.3) with -32 option rather than -n32.
Below is perl -V output:
===============================================================================
Summary of my perl5 (revision 5.0 version 8 subversion 3) configuration:
  Platform:
    osname=irix, osvers=6.4, archname=IP27-irix-thread-multi
    uname='irix64 nasa 6.4 02121744 ip27 '
    config_args='-Duseithreads -Dcc=cc -32'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define usemultiplicity=de
fine
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc -32', ccflags ='-DPTHREAD_H_FIRST -32 -D_BSD_TYPES -D_BSD_TIME -Olimi
t 3100 -I/usr/local/include -DLANGUAGE_C',
    optimize='-O',
    cppflags='-DPTHREAD_H_FIRST -32 -D_BSD_TYPES -D_BSD_TIME -I/usr/local/includ
e -DLANGUAGE_C'
    ccversion='MIPSpro Compilers: Version 7.30', gccversion='', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize
=4
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='cc -32', ldflags =' -Wl,-woff,84 -L/usr/local/lib'
    libpth=/usr/local/lib /usr/lib /lib
    libs=-lm -lpthread
    perllibs=-lm -lpthread
    libc=/usr/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
    cccdlflags='-KPIC', lddlflags='-shared -L/usr/local/lib'

Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_
CONTEXT
  Built under irix
  Compiled at Jun 28 2004 17:55:16
  %ENV:
    PERL5LIB=""
  @INC:
    /work/dev/perl/vendor//lib/5.8.3/IP27-irix-thread-multi
    /work/dev/perl/vendor//lib/5.8.3
    /work/dev/perl/vendor//lib/site_perl/5.8.3/IP27-irix-thread-multi
    /work/dev/perl/vendor//lib/site_perl/5.8.3
    /work/dev/perl/vendor//lib/site_perl
    .
===============================================================================
I ran 'perl Makefile.PL -p' as recommended for IRIX.
===============================================================================
Here is the output:

Using DBI 1.42 (for perl 5.008003 on IP27-irix-thread-multi) installed in /work/
dev/perl/vendor//lib/site_perl/5.8.3/IP27-irix-thread-multi/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/734
7.3.4.0.0 Oracle Common RDBMS Libraries and Utilities
7.3.4.0.0 ORACLE PL/SQL Libraries
7.3.4.0.0 ORACLE Common Precomp Libraries
2.3.4.0.0 PL/SQL V2
7.3.4.0.0 Oracle7 Server (RDBMS)
7.3.4.0.0 Precomp
2.2.4.0.0 Pro*C
Oracle version 7.3.4 (7.304)

Found /u01/app/oracle/product/734/precomp/demo/proc/proc.mk
Found /u01/app/oracle/product/734/rdbms/demo/oracle.mk
Found /u01/app/oracle/product/734/otrace/demo/atmoci.mk
Using /u01/app/oracle/product/734/precomp/demo/proc/proc.mk
Reading /u01/app/oracle/product/734/precomp/demo/proc/proc.mk
Using value of ORA_CLIENT_LIB from environment: shared

Attempting to discover Oracle OCI build rules
        cc -32 -O -c DBD_ORA_OBJ.c
by executing: [make -f /u01/app/oracle/product/734/precomp/demo/proc/proc.mk bui
ld ECHODO=echo ECHO=echo GENCLNTSH='echo genclntsh' CC=echo OPTIMIZE= CCFLAGS= E
XE=DBD_ORA_EXE OBJS=DBD_ORA_OBJ.o]
Oracle oci build command:
        [-o DBD_ORA_EXE DBD_ORA_OBJ.o -L/u01/app/oracle/product/734/lib -lclntsh
 -lxa -lsql -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -
lsqlnet -lclient -lcommon -lgeneric -lepc -lepcpt -lnlsrtl3 -lc3v6 -lcore3 -lnls
rtl3 -lcore3 -lnlsrtl3 -lsocket -lnsl -lm -lm]

Found header files in rdbms/demo.

Checking for functioning wait.ph

System: perl5.008003 irix64 nasa 6.4 02121744 ip27
Compiler: cc -32 -O -DPTHREAD_H_FIRST -32 -D_BSD_TYPES -D_BSD_TIME -Olimit 310
0 -I/usr/local/include -DLANGUAGE_C
Linker: /bin/ld
Sysliblist: -lsocket -lnsl -lm
Oracle makefiles would have used these definitions but we override them:
  CC: cc

  CFLAGS: $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(QACCFLAGS) $(PFLAGS) $(S
HARED_CFLAG) $(ENV_FLAGS)
           [$(GFLAG) $(OPTIMIZE) $(CDEBUG) -KPIC $(QACCFLAGS) -I. -I/u01/app/ora
cle/product/734/precomp/public $(LPFLAGS) $(SHARED_CFLAG) $(ENV_FLAGS)]

  CLIBS: $(LOCALLIBS) $(EXOSLIBS) $(LIBBSD) $(OTHERLIBS) $(SECLIBS) $(M6LIBS)
           [ $(EXOSLIBS) $(LIBBSD) -lsocket -lnsl -lm $(SECLIBS) $(M6LIBS)]

  LDFLAGS: `if [ -x /usr/lib/ld32 ] ; then echo "-Wl,-woff,84" ; fi` -o $@ $(PR
ODUCT_LIBHOME) -L$(LIBHOME)
           [ -o $@ -L$(LIBHOME)]

Linking with OTHERLDFLAGS = -L/u01/app/oracle/product/734/lib -lclntsh -lxa -l
sql -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -lsqlnet
-lclient -lcommon -lgeneric -lepc -lepcpt -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lc
ore3 -lnlsrtl3 -lsocket -lnsl -lm -lm [from 'build' rule]

Checking if your kit is complete...
Looks good
LD_RUN_PATH=/u01/app/oracle/product/734/lib:/u01/app/oracle/product/734/rdbms/li
b
Using DBD::Oracle 1.15.
Using DBD::Oracle 1.15.
Using DBI 1.42 (for perl 5.008003 on IP27-irix-thread-multi) installed in /work/
dev/perl/vendor//lib/site_perl/5.8.3/IP27-irix-thread-multi/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?)
===============================================================================
But when I run make, I get a couple of dozens of errors which look to be
from the similar origin:
[I am only posting the top of the stderr output, but if required I'll
post all of it]
===============================================================================
        cc -32 -c -I/u01/app/oracle/product/734/rdbms/demo -I/u01/app/oracle/pr
oduct/734/rdbms/public -I. -I/u01/app/oracle/product/734/rdbms/demo -I/u01/app/o
racle/product/734/rdbms/demo -I/work/dev/perl/vendor//lib/site_perl/5.8.3/IP27-i
rix-thread-multi/auto/DBI -DPTHREAD_H_FIRST -32 -D_BSD_TYPES -D_BSD_TIME -Olimi
t 3100 -I/usr/local/include -DLANGUAGE_C -O -DVERSION=\"1.15\" -DXS_VERSION=
\"1.15\" -KPIC "-I/work/dev/perl/vendor/lib/5.8.3/IP27-irix-thread-multi/CORE"
-DUTF8_SUPPORT Oracle.c
cfe: Error: Oracle.c, line 1166: Syntax Error
        UV offset = (UV)((((*Perl_Tstack_base_ptr(((PerlInterpreter *)pthre
ad_getspecific((*Perl_Gthr_key_ptr(0L))))))[ax + (2)])->sv_flags & 0x00010000 )
  ? ((XPVUV*) ((*Perl_Tstack_base_ptr(((PerlInterpreter *)pthread_getspecific((
*Perl_Gthr_key_ptr(0L))))))[ax + (2)])->sv_any )->xuv_uv : Perl_sv_2uv(((PerlIn
terpreter *)pthread_getspecific((*Perl_Gthr_key_ptr(0L))) ) , (*Perl_Tstack_b
ase_ptr(((PerlInterpreter *)pthread_getspecific((*Perl_Gthr_key_ptr(0L))))))[ax
+ (2)]) ) ;
        -- ^
cfe: Error: Oracle.c, line 1166: Syntax Error
        UV offset = (UV)((((*Perl_Tstack_base_ptr(((PerlInterpreter *)pthre
ad_getspecific((*Perl_Gthr_key_ptr(0L))))))[ax + (2)])->sv_flags & 0x00010000 )
  ? ((XPVUV*) ((*Perl_Tstack_base_ptr(((PerlInterpreter *)pthread_getspecific((
*Perl_Gthr_key_ptr(0L))))))[ax + (2)])->sv_any )->xuv_uv : Perl_sv_2uv(((PerlIn
terpreter *)pthread_getspecific((*Perl_Gthr_key_ptr(0L))) ) , (*Perl_Tstack_b
ase_ptr(((PerlInterpreter *)pthread_getspecific((*Perl_Gthr_key_ptr(0L))))))[ax
+ (2)]) ) ;
        -- ----------------------------------------------------------^
cfe: Error: Oracle.c, line 1166: Syntax Error
        UV offset = (UV)((((*Perl_Tstack_base_ptr(((PerlInterpreter *)pthre
ad_getspecific((*Perl_Gthr_key_ptr(0L))))))[ax + (2)])->sv_flags & 0x00010000 )
  ? ((XPVUV*) ((*Perl_Tstack_base_ptr(((PerlInterpreter *)pthread_getspecific((
*Perl_Gthr_key_ptr(0L))))))[ax + (2)])->sv_any )->xuv_uv : Perl_sv_2uv(((PerlIn
terpreter *)pthread_getspecific((*Perl_Gthr_key_ptr(0L))) ) , (*Perl_Tstack_b
ase_ptr(((PerlInterpreter *)pthread_getspecific((*Perl_Gthr_key_ptr(0L))))))[ax
+ (2)]) ) ;
        -- ----------------------------------------------------------------
----------------------------------------^
cfe: Error: Oracle.c, line 1166: Syntax Error
        UV offset = (UV)((((*Perl_Tstack_base_ptr(((PerlInterpreter *)pthre
ad_getspecific((*Perl_Gthr_key_ptr(0L))))))[ax + (2)])->sv_flags & 0x00010000 )
  ? ((XPVUV*) ((*Perl_Tstack_base_ptr(((PerlInterpreter *)pthread_getspecific((
*Perl_Gthr_key_ptr(0L))))))[ax + (2)])->sv_any )->xuv_uv : Perl_sv_2uv(((PerlIn
terpreter *)pthread_getspecific((*Perl_Gthr_key_ptr(0L))) ) , (*Perl_Tstack_b
ase_ptr(((PerlInterpreter *)pthread_getspecific((*Perl_Gthr_key_ptr(0L))))))[ax
+ (2)]) ) ;
        -- ----------------------------------------------------------------
----------------------------------------------------^



Relevant Pages

  • Re: Problem executing Oracle SP from ASP page
    ... > I am receiving the following error when I try to execute an Oracle ... > Syntax error in ODBC Escape ... Here is the relevant code - ... > adParamInput, 40, "E0025659") ...
    (microsoft.public.data.ado)
  • Re: Specifying the CLOBs in SQLLOADER control files
    ... into the datafile in EBCDIC format. ... I am loading the data into the oracle tables using the charcter set ... when i specify a column with CLOB datatype i am getting a syntax error. ... the exact control file ...
    (comp.databases.oracle.server)
  • Oracle pro*c compiler error using REGEXP_LIKE
    ... I have a c/c++ api into some oracle database tables. ... perform a bulk cursor select using the REGEXP_LIKE function, ... Syntax error at line 133, column 125, file xcd.pc: ... EXEC SQL DECLARE xdcdcsrl CURSOR FOR SELECT doc_id FROM xcd WHERE ...
    (comp.databases.oracle.misc)
  • Re: How to get number of returned rows of another select query?
    ... It works in Access, SQLServer, Oracle, but get syntax error in Ingres. ... Fix it by putting "as" behind the sub query. ...
    (comp.databases.ingres)
  • Re: ANNOUNCE: DBD:Oracle 1.18
    ... Well a warning in one compiler is better than and error in an other so I ... This might be a problem more with the older oracle OCI in your client. ... perl -Mblib t/26exe_array.t ...
    (perl.dbi.users)