Re: Oracle::OCI help

[email protected] (Tim Bunce) Tue, 6 Nov 2001 15:23:25 +0000
Newsgroups perl.dbi.oracle-oci
Message-ID <[email protected]>
On Mon, Nov 05, 2001 at 05:00:06PM -0700, Ron Reidy wrote:
> Tim,
> 
> I am having errors during the 'make' and 'make test' phases of this
> module.  Here are the vitals...
> 
> Oracle version: 9.0.1.0.0
> RH Linux 7.1 (downgraded binutils - binutils-2.10.0.18)
> gcc-2.96-81
> 
> The 'make' problem comes from:
> Please specify prototyping behavior for OCI.xs (see perlxs manual)

You can ignore that.

> This is then followed by several warning messages:
> OCI.c:14974: warning: initialization makes pointer from integer without a cast

What's on that line?

> Normally, this would not cause a problem for me (other than not a clean
> compile), but when running 'make test', the problems become ugly, giving
> the following messages for every test:
> 
> t/01base............Can't load 'blib/arch/auto/Oracle/OCI/OCI.so' for
> module Oracle::OCI: blib/arch/auto/Oracle/OCI/OCI.so: undefined symbol:
> ora_getptr_OCIAnyDataSetPtr at
> /usr/local/lib/perl5/5.6.1/i686-linux/DynaLoader.pm line 206.
> 
> I also tried 'boot -all', but this resulted in may more errors of the
> type
> Error: 'OCIString *' not in typemap in OCI.xs, line 17099
> and these caused the 'make' to fail.
> 
> I am at a loss as to where or even how to fix this.  Can you give me a
> direction to look in?  Is there a mailing list I can subscribe to or
> some other place to get information?

This is the right place.

The README.build file explains how to deal with the 'OCI... *' not
in typemap error.

For the next release I've also added this text to that file:

    =head2 Error: ... undefined symbol ... ora_getptr_OCI...
     
    For errors like:
     
      Can't load '.../OCI.so' for module Oracle::OCI: .../OCI.so: undefined symbol: ora_getptr_OCI...
     
    Add the corresponding #'define line into getptrdef.h, like:
     
      #define ora_getptr_OCIEnvPtr ora_getptr_generic
     
    Then rerun the boot script.
     
Tim.

p.s. I'm working an a new DBI release now. Then I'll do a DBD::Oracle
and then Oracle::OCI.  I'll be talking about the modules on the
Perl Whirl '02 GeekCruise (www.geekcruises.com) in January and that'll
motivate me to push ahead with them before hand :)