Subject: | DBD::Oracle fails build on Oracle 8.1.7 |
Date: | Wed, 29 Nov 2006 09:03:19 -0700 |
To: | bug-DBD-Oracle [...] rt.cpan.org. |
From: | Darren Holloway <Darren [...] Mambo.NET> |
Problem: DBI::Oracle doesn't build with Oracle 8.1.7
************* PATCH ***************************************
host$ diff -c Oracle.xs Oracle.xs.orig
*** Oracle.xs Wed Nov 29 08:55:06 2006
--- Oracle.xs.orig Wed Nov 29 08:39:45 2006
***************
*** 224,230 ****
STRLEN data_len; /* bytes not chars */
dvoid *bufp;
sword status;
! ub4 startp;
ub1 csform;
ub2 csid;
CODE:
--- 224,230 ----
STRLEN data_len; /* bytes not chars */
dvoid *bufp;
sword status;
! /*ub4 startp;*/
ub1 csform;
ub2 csid;
CODE:
***************** BUILD OUTPUT ON ERROR *************************
Script started on Wed Nov 29 08:54:29 2006
host$ perl Makefile.PL
Using DBI 1.52 (for perl 5.008008 on sun4-solaris) installed in
/usr/local/lib/p
erl5/site_perl/5.8.8/sun4-solaris/auto/DBI/
Configuring DBD::Oracle for perl 5.008008 on solaris (sun4-solaris)
Remember to actually *READ* the README file! Especially if you have any
problems
.
Using Oracle in /u01/home/oracle/product/8.1.7
DEFINE _SQLPLUS_RELEASE = "801070000" (CHAR)
Oracle version 8.1.7.0 (8.1)
Found /u01/home/oracle/product/8.1.7/rdbms/demo/demo_rdbms.mk
Using /u01/home/oracle/product/8.1.7/rdbms/demo/demo_rdbms.mk
Your LD_LIBRARY_PATH env var is set to
'/lib:/usr/lib:/usr/ccs/lib:/usr/local/li
b:/u01/home/oracle/product/8.1.7/lib'
Reading /u01/home/oracle/product/8.1.7/rdbms/demo/demo_rdbms.mk
Reading /u01/home/oracle/product/8.1.7/rdbms/lib/env_rdbms.mk
Attempting to discover Oracle OCI build rules
gcc -B/usr/ccs/bin/ -c DBD_ORA_OBJ.c
by executing: [make -f
/u01/home/oracle/product/8.1.7/rdbms/demo/demo_rdbms.mk b
uild 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/u01/home/oracle/product/8.1.7/lib/
-L/u01/home/oracle/product/8
.1.7/rdbms/lib/ -o DBD_ORA_EXE DBD_ORA_OBJ.o -lclntsh
/u01/home/oracle/product/8
.1.7/rdbms/lib/kpuadef.o `sed -e 's/-ljava//g'
/u01/home/oracle/product/8.1.7/l
ib/ldflags` -lnsgr8 -lnzjs8 -ln8 -lnl8 -lnro8 `sed -e 's/-ljava//g'
/u01/home/or
acle/product/8.1.7/lib/ldflags` -lnsgr8 -lnzjs8 -ln8 -lnl8 -lclient8
-lvsn8 -lw
tc8 -lcommon8 -lgeneric8 -lwtc8 -lmm -lnls8 -lcore8 -lnls8 -lcore8
-lnls8 `se
d -e 's/-ljava//g' /u01/home/oracle/product/8.1.7/lib/ldflags` -lnsgr8
-lnzjs8 -
ln8 -lnl8 -lnro8 `sed -e 's/-ljava//g'
/u01/home/oracle/product/8.1.7/lib/ldflag
s` -lnsgr8 -lnzjs8 -ln8 -lnl8 -lclient8 -lvsn8 -lwtc8 -lcommon8
-lgeneric8 -l
trace8 -lnls8 -lcore8 -lnls8 -lcore8 -lnls8 -lclient8 -lvsn8 -lwtc8
-lcommo
n8 -lgeneric8 -lnls8 -lcore8 -lnls8 -lcore8 -lnls8 `cat
/u01/home/oracle/pro
duct/8.1.7/lib/sysliblist` `if [ -f /usr/lib/libsched.so ] ; then echo
-lsched ;
else true; fi` -R/u01/home/oracle/product/8.1.7/lib -laio -lposix4
-lkstat -lm
-lthread]
Found header files in /u01/home/oracle/product/8.1.7/rdbms/demo
/u01/home/oracle
/product/8.1.7/rdbms/public.
Checking for functioning wait.ph
System: perl5.008008 sunos cleanpix2 5.8 generic_108528-13 sun4u sparc
sunw,ultr
aax-i2
Compiler: gcc -B/usr/ccs/bin/ -O -fno-strict-aliasing -pipe
-I/usr/local/inclu
de -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
Linker: /usr/ccs/bin/ld
Sysliblist: -lnsl -lsocket -lgen -ldl -lsched
Oracle makefiles would have used these definitions but we override them:
CC: cc
CFLAGS: $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(QACCFLAGS)
$(PFLAGS)\
$(SHARED_CFLAG) $(USRFLAGS)
[$(GFLAG) -xO2 $(CDEBUG) -Xa $(PROFILE) -xstrconst -xF $(XS)
-mr -xar
ch=v8 -xcache=16/32/1:1024/64/1 -xchip=ultra -D_REENTRANT -K PIC
$(QACCFLAGS) -I
/u01/home/oracle/product/8.1.7/rdbms/demo
-I/u01/home/oracle/product/8.1.7/rdbms
/public -I/u01/home/oracle/product/8.1.7/plsql/public
-I/u01/home/oracle/product
/8.1.7/network/public -DSLMXMX_ENABLE -DSLTS_ENABLE -D_SVID_GETTOD
$(LPFLAGS) $(
USRFLAGS)]
LDFLAGS: -L$(LIBHOME) -L$(RDBMSLIB)
[-L$(LIBHOME) -L/u01/home/oracle/product/8.1.7/rdbms/lib/]
Linking with OTHERLDFLAGS = -L/u01/home/oracle/product/8.1.7/lib/
-L/u01/home/or
acle/product/8.1.7/rdbms/lib/ -lclntsh
/u01/home/oracle/product/8.1.7/rdbms/li
b/kpuadef.o `sed -e 's/-ljava//g'
/u01/home/oracle/product/8.1.7/lib/ldflags` -
lnsgr8 -lnzjs8 -ln8 -lnl8 -lnro8 `sed -e 's/-ljava//g'
/u01/home/oracle/product/
8.1.7/lib/ldflags` -lnsgr8 -lnzjs8 -ln8 -lnl8 -lclient8 -lvsn8 -lwtc8
-lcommon
8 -lgeneric8 -lwtc8 -lmm -lnls8 -lcore8 -lnls8 -lcore8 -lnls8 `sed -e
's/-ljav
a//g' /u01/home/oracle/product/8.1.7/lib/ldflags` -lnsgr8 -lnzjs8 -ln8
-lnl8 -ln
ro8 `sed -e 's/-ljava//g' /u01/home/oracle/product/8.1.7/lib/ldflags`
-lnsgr8 -l
nzjs8 -ln8 -lnl8 -lclient8 -lvsn8 -lwtc8 -lcommon8 -lgeneric8
-ltrace8 -lnls8
-lcore8 -lnls8 -lcore8 -lnls8 -lclient8 -lvsn8 -lwtc8 -lcommon8
-lgeneric8
-lnls8 -lcore8 -lnls8 -lcore8 -lnls8 `cat
/u01/home/oracle/product/8.1.7/li
b/sysliblist` `if [ -f /usr/lib/libsched.so ] ; then echo -lsched ; else
true; f
i` -R/u01/home/oracle/product/8.1.7/lib -laio -lposix4 -lkstat -lm
-lthread [f
rom 'build' rule]
WARNING: If you have problems you may need to rebuild perl with
threading enable
d.^G
Checking if your kit is complete...
Warning: the following files are missing in your kit:
META.yml
Please inform the author.
LD_RUN_PATH=/u01/home/oracle/product/8.1.7/lib:/u01/home/oracle/product/8.1.7/rd
bms/lib
Using DBD::Oracle 1.18.
Using DBD::Oracle 1.18.
Using DBI 1.52 (for perl 5.008008 on sun4-solaris) installed in
/usr/local/lib/p
erl5/site_perl/5.8.8/sun4-solaris/auto/DBI/
Writing Makefile for DBD::Oracle
*** 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?)
host$ make
cp Oracle.pm blib/lib/DBD/Oracle.pm
cp mkta.pl blib/lib/DBD/mkta.pl
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 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/local/lib/perl5/site_perl/5.8.8/s
un4-solaris/auto/DBI/Driver.xst > Oracle.xsi
/usr/bin/perl /usr/local/lib/perl5/5.8.8/ExtUtils/xsubpp -typemap
/usr/local/li
b/perl5/5.8.8/ExtUtils/typemap -typemap typemap Oracle.xs > Oracle.xsc
&& mv Or
acle.xsc Oracle.c
gcc -B/usr/ccs/bin/ -c -I/u01/home/oracle/product/8.1.7/rdbms/demo
-I/u01/home/
oracle/product/8.1.7/rdbms/public
-I/u01/home/oracle/product/8.1.7/rdbms/demo -I
/u01/home/oracle/product/8.1.7/rdbms/public
-I/u01/home/oracle/product/8.1.7/pls
ql/public -I/u01/home/oracle/product/8.1.7/network/public
-I/usr/local/lib/perl5
/site_perl/5.8.8/sun4-solaris/auto/DBI -fno-strict-aliasing -pipe
-I/usr/local/
include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O
-DVERSION=\"1.18\" -DX
S_VERSION=\"1.18\" -fPIC
"-I/usr/local/lib/perl5/5.8.8/sun4-solaris/CORE" -Wall
-Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"8.1.7.0\" Oracle.c
Oracle.xs: In function `XS_DBD__Oracle__db_ora_lob_append':
Oracle.xs:269: `startp' undeclared (first use in this function)
Oracle.xs:269: (Each undeclared identifier is reported only once
Oracle.xs:269: for each function it appears in.)
*** Error code 1
make: Fatal error: Command failed for target `Oracle.o'
host$ exit