Problem with boot on Solaris 8/Oracle 8.1.7

[email protected] (Charles Jardine) Fri, 22 Jun 2001 16:10:04 +0100
Newsgroups perl.dbi.oracle-oci
Organization University of Cambridge Computing Service
Message-ID <[email protected]>
Versions:
   OS          Solaris 8 (sparc)
   Oracle      8.1.7.0.0
   Perl        5.6.1
   DBI         1.18
   DBD::Oracle 1.07
   C::Scan     0.74
   Oracle::OCI 0.02

To get boot to fly at all, I had to change it as follows:

***************
*** 121,127 ****
  -r _        or croak "Error:  unreadable $oci_hdr";
  
  my $demodir = "$orahome/rdbms/demo";
! my $netdir  = "$orahome/rdbms/public";
  -d $demodir  or croak "Error:  no directory '$demodir'";
  -r _ && -x _ or croak "Error:  bad mods on '$demodir'";
  -d $netdir   or croak "Error:  no directory '$netdir'";
--- 121,127 ----
  -r _        or croak "Error:  unreadable $oci_hdr";
  
  my $demodir = "$orahome/rdbms/demo";
! my $netdir  = "$orahome/network/public";
  -d $demodir  or croak "Error:  no directory '$demodir'";
  -r _ && -x _ or croak "Error:  bad mods on '$demodir'";
  -d $netdir   or croak "Error:  no directory '$netdir'";

There is no directory $ORACLE_HOME/network/public.
$ORACLE_HOME/rdbms/public contains essential headers.

Now boot runs, but produces the following errors

cj10@curlew$ ./boot
Name "main::dbd_oracle_mm_opts" used only once: possible typo at ./boot line 96.
Regex for h2xs ignores: ^OCI(?!AQ|AttrGet|Bind|Cache|Callback|Complex|Context|Date|DirPath|EnvCallback|Extract|File|Format|Interval|Iter|Memory|Message|MultiByte|Number|Object|Pickler|Raw|Ref|Security|StmtGetBindInfo|String|Subscription|Table|Thread|Type|TypeArrayByName|TypeArrayByRef|WideChar)
Complete h2xs arguments: ./h2xs -d -O -n Oracle::OCI -F '-I/oracle.8.1.7/rdbms/demo -I/oracle.8.1.7/rdbms/public' -E get_oci_error,get_oci_handle,OCIAttrGet -M '^OCI(?!AQ|AttrGet|Bind|Cache|Callback|Complex|Context|Date|DirPath|EnvCallback|Extract|File|Format|Interval|Iter|Memory|Message|MultiByte|Number|Object|Pickler|Raw|Ref|Security|StmtGetBindInfo|String|Subscription|Table|Thread|Type|TypeArrayByName|TypeArrayByRef|WideChar)' -k -x /oracle.8.1.7/rdbms/demo/oci.h
Running h2xs...
Cannot process declaration `sword
# 105
OCIDirPathAbort(OCIDirPathCtx *dpctx, OCIError *errhp)' without an identifier at /home/cj10/perl/lib/site_perl/5.6.1/C/Scan.pm line 720.
h2xs failed at ./boot line 167

The fragment of code quoted appears to come from 
$ORACLE_HOME/rdbms/demo/oci8dp.h, and reads in the original

> sword
> #if defined(__STDC__) || defined(__cplusplus)
> OCIDirPathAbort(OCIDirPathCtx *dpctx, OCIError *errhp);
> #else
> OCIDirPathAbort(/*_ OCIDirPathCtx *dpctx, OCIError *errhp _*/);
> #endif

Can anyone suggest where to go from here.

-- 
Charles Jardine - Computing Service, University of Cambridge
[email protected]    Tel: +44 1223 334506, Fax: +44 1223 334679