Hi All,

I've been banging my head against the desk trying to get DBD::Oracle to
compile on Redhat (Linux 2.6.18-238.1.1.el5 #1 SMP Tue Jan 4 13:32:19 EST
2011 x86_64 x86_64 x86_64 GNU/Linux).  Oracle version 10.1.0.5 (10.1)

I read through the supporting documents and I cannot find anything that I
have been missing when trying to build DBD::Oracle 1.32
I get the same compile errors in 1.29, 1.30 and 1.32.  I attached the
outputs of perl Makefile.PL, make and perl -V


make output:

cp Oracle.pm blib/lib/DBD/Oracle.pm
cp oraperl.ph blib/lib/oraperl.ph
cp dbdimp.h blib/arch/auto/DBD/Oracle/dbdimp.h
cp ocitrace.h blib/arch/auto/DBD/Oracle/ocitrace.h
cp Oraperl.pm blib/lib/Oraperl.pm
cp Oracle.h blib/arch/auto/DBD/Oracle/Oracle.h
cp lib/DBD/Oracle/Object.pm blib/lib/DBD/Oracle/Object.pm
cp mk.pm blib/arch/auto/DBD/Oracle/mk.pm
cp lib/DBD/Oracle/GetInfo.pm blib/lib/DBD/Oracle/GetInfo.pm
/usr/bin/perl -p -e "s/~DRIVER~/Oracle/g"
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBI/Driver.xst
> Oracle.xsi
/usr/bin/perl /usr/lib/perl5/5.8.8/ExtUtils/xsubpp  -typemap
/usr/lib/perl5/5.8.8/ExtUtils/typemap -typemap typemap  Oracle.xs >
Oracle.xsc && mv Oracle.xsc Oracle.c
gcc -c  -I/oracle/software/10.1.0.5.0/rdbms/public
-I/oracle/software/10.1.0.5.0//rdbms/demo
-I/oracle/software/10.1.0.5.0//rdbms/public
-I/oracle/software/10.1.0.5.0//plsql/public
-I/oracle/software/10.1.0.5.0//network/public
-I/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBI
-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m64 -mtune=generic   -DVERSION=\"1.32\"
-DXS_VERSION=\"1.32\" -fPIC
"-I/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE"  -Wall
-Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"10.1.0.5\" Oracle.c
Oracle.c: In function ‘XS_DBD__Oracle__db_ora_db_startup’:
Oracle.xs:286: warning: unused variable ‘status’
Oracle.xs:285: warning: unused variable ‘imp_dbh’
Oracle.c:1715: warning: unused variable ‘attribs’
Oracle.c: In function ‘XS_DBD__Oracle__db_ora_db_shutdown’:
Oracle.xs:329: warning: unused variable ‘status’
Oracle.xs:328: warning: unused variable ‘imp_dbh’
Oracle.c:1770: warning: unused variable ‘attribs’
Oracle.xs: In function ‘XS_DBD__Oracle__db_ora_can_taf’:
Oracle.xs:360: error: ‘OCI_ATTR_TAF_ENABLED’ undeclared (first use in this
function)
Oracle.xs:360: error: (Each undeclared identifier is reported only once
Oracle.xs:360: error: for each function it appears in.)
make: *** [Oracle.o] Error 1





perl Makefile.PL looks fine when I run it:

Using DBI 1.616 (for perl 5.008008 on x86_64-linux-thread-multi) installed
in /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBI/

Configuring DBD::Oracle for perl 5.008008 on linux
(x86_64-linux-thread-multi)


Installing on a linux, Ver#2.6
Using Oracle in /oracle/software/10.1.0.5.0
DEFINE _SQLPLUS_RELEASE = "1001000500" (CHAR)
Oracle version 10.1.0.5 (10.1)
Found /oracle/software/10.1.0.5.0/rdbms/demo/demo_rdbms.mk
Found /oracle/software/10.1.0.5.0/rdbms/demo/demo_rdbms64.mk
Found /oracle/software/10.1.0.5.0/rdbms/lib/ins_rdbms.mk
Using /oracle/software/10.1.0.5.0/rdbms/demo/demo_rdbms.mk
Your LD_LIBRARY_PATH env var is set to '/oracle/software/10.1.0.5.0/lib/'
Reading /oracle/software/10.1.0.5.0/rdbms/demo/demo_rdbms.mk
Reading /oracle/software/10.1.0.5.0//rdbms/lib/env_rdbms.mk

Attempting to discover Oracle OCI build rules
gcc    -c -o DBD_ORA_OBJ.o DBD_ORA_OBJ.c
by executing: [make -f
/oracle/software/10.1.0.5.0/rdbms/demo/demo_rdbms.mkbuild ECHODO=echo
ECHO=echo GENCLNTSH='echo genclntsh' CC=true OPTIMIZE=
CCFLAGS= EXE=DBD_ORA_EXE OBJS=DBD_ORA_OBJ.o]
Oracle oci build command:
[true -L/oracle/software/10.1.0.5.0//lib/
-L/oracle/software/10.1.0.5.0//rdbms/lib/ -o DBD_ORA_EXE DBD_ORA_OBJ.o
-lclntsh   `cat /oracle/software/10.1.0.5.0//lib/sysliblist` -ldl -lm  ]

Found header files in /oracle/software/10.1.0.5.0/rdbms/public.

client_version=10.1


DEFINE= -Wall -Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"10.1.0.5\"


Checking for functioning wait.ph


System: perl5.008008 linux x86-005.build.bos.redhat.com 2.6.18-194.8.1.el5
#1 smp wed jun 23 10:52:51 edt 2010 x86_64 x86_64 x86_64 gnulinux
Compiler:   gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_REENTRANT
-D_GNU_SOURCE -fno-strict-aliasing -pipe -Wdeclaration-after-statement
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/include/gdbm
Linker:     /usr/bin/ld
Sysliblist: -ldl -lm -lpthread -lnsl -lirc
Oracle makefiles would have used these definitions but we override them:
  CC:       $(ORACLE_HOME)/bin/ogcc
  CFLAGS:   $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\
$(SHARED_CFLAG) $(USRFLAGS)
           [$(GFLAG) -O3 $(CDEBUG) $(CCFLAGS)
-I/oracle/software/10.1.0.5.0//rdbms/demo
-I/oracle/software/10.1.0.5.0//rdbms/public
-I/oracle/software/10.1.0.5.0//plsql/public
-I/oracle/software/10.1.0.5.0//network/public -DLINUX -D_GNU_SOURCE
-D_LARGEFILE64_SOURCE=1 -D_LARGEFILE_SOURCE=1 -DSLTS_ENABLE -DSLMXMX_ENABLE
-D_REENTRANT -DNS_THREADS $(LPFLAGS) $(USRFLAGS)]
  LDFLAGS:  -o $@ $(LDPATHFLAG)$(PRODLIBHOME) $(LDPATHFLAG)$(LIBHOME)
$(LDPATHFLAG)$(LIBHOME)stubs/
           [-o $@ -L/oracle/software/10.1.0.5.0//rdbms/lib/ -L$(LIBHOME)
-L$(LIBHOME)stubs/]
Linking with OTHERLDFLAGS = -L/oracle/software/10.1.0.5.0//lib/
-L/oracle/software/10.1.0.5.0//rdbms/lib/   -lclntsh   `cat
/oracle/software/10.1.0.5.0//lib/sysliblist` -ldl -lm   [from 'build' rule]

Checking if your kit is complete...
Warning: the following files are missing in your kit:
README.explain.txt
Please inform the author.
LD_RUN_PATH=/oracle/software/10.1.0.5.0/lib:/oracle/software/10.1.0.5.0/rdbms/lib
Using DBD::Oracle 1.32.
Using DBD::Oracle 1.32.
Using DBI 1.616 (for perl 5.008008 on x86_64-linux-thread-multi) installed
in /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBI/
Writing Makefile for DBD::Oracle
Writing MYMETA.yml and MYMETA.json

***  If you have problems...
     read all the log printed above, and the README and README.help.txt
files.
     (Of course, you have read README by now anyway, haven't you?)



###################################################
###################################################



perl -V

Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
  Platform:
    osname=linux, osvers=2.6.18-194.8.1.el5,
archname=x86_64-linux-thread-multi
    uname='linux x86-005.build.bos.redhat.com 2.6.18-194.8.1.el5 #1 smp wed
jun 23 10:52:51 edt 2010 x86_64 x86_64 x86_64 gnulinux '
    config_args='-des -Doptimize=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
-fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic
-Dversion=5.8.8 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc
-Dcf_by=Red Hat, Inc. -Dinstallprefix=/usr -Dprefix=/usr
-Dlibpth=/usr/local/lib64 /lib64 /usr/lib64 -Dprivlib=/usr/lib/perl5/5.8.8
-Dsitelib=/usr/lib/perl5/site_perl/5.8.8
-Dvendorlib=/usr/lib/perl5/vendor_perl/5.8.8
-Darchlib=/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi
-Dsitearch=/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi
-Dvendorarch=/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi
-Darchname=x86_64-linux-thread-multi -Dvendorprefix=/usr -Dsiteprefix=/usr
-Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Dd_dosuid
-Dd_semctl_semun -Di_db -Ui_ndbm -Di_gdbm -Di_shadow -Di_syslog
-Dman3ext=3pm -Duseperlio -Dinstallusrbinperl=n -Ubincompat5005
-Uversiononly -Dpager=/usr/bin/less -isr -Dd_gethostent_r_proto
-Ud_endhostent_r_proto -Ud_sethostent_r_proto -Ud_endprotoent_r_proto
-Ud_setprotoent_r_proto -Ud_endservent_r_proto -Ud_setservent_r_proto
-Dinc_version_list=5.8.7 5.8.6 5.8.5 -Dscriptdir=/usr/bin'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=define use64bitall=define uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing
-pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm',
    optimize='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include -I/usr/include/gdbm'
    ccversion='', gccversion='4.1.2 20080704 (Red Hat 4.1.2-48)',
gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='gcc', ldflags =''
    libpth=/usr/local/lib64 /lib64 /usr/lib64
    libs=-lresolv -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
    perllibs=-lresolv -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
    libc=, so=so, useshrplib=true, libperl=libperl.so
    gnulibc_version='2.5'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E
-Wl,-rpath,/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE'
    cccdlflags='-fPIC', lddlflags='-shared -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m64 -mtune=generic'


Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
                        PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT
                        USE_ITHREADS USE_LARGE_FILES USE_PERLIO
                        USE_REENTRANT_API
  Built under linux
  Compiled at Sep  3 2010 08:59:03
  @INC:
    /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi
    /usr/lib/perl5/site_perl/5.8.8
    /usr/lib/perl5/site_perl
    /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi
    /usr/lib/perl5/vendor_perl/5.8.8
    /usr/lib/perl5/vendor_perl
    /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi
    /usr/lib/perl5/5.8.8
    .

Reply via email to