[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

[MacPerl] Re: Help for new Oracle port???




> From: campbell@informatics.com (Keith E. Campbell)
> 
> I'm trying to port the Oracle DBD to the Macintosh.

> With the PowerPC's out, I'm trying to combine MacPerl 5.07

What on earth is MacPerl 5.07? Perl is only at 5.002. (I've had this
debate with the Win32 people at HIP. It's just not helpful to use a different
versioning scheme. It would be better to use, for example, MacPerl5.002v1
5.002v2 etc.)

> With the PowerPC's out, I'm trying to combine MacPerl 5.07  with the DBI
> and the Oracle DBD driver to use with Personal Oracle 7 for Macintosh. I've
> successfully collected all the sources, and compiled and linked the files
> without error. However, I believe that is not sufficient. In my brief
> readings, I'm under the impression that "plugin modules" are dynamically
> linked in Perl 5... Something not easy on the Mac.

You should be able to build them for static linking and then build a new
perl binary which contains them already linked in.

> I've compiled and linked the dbdimp.c file with the MacPerl libraries, and
> generated a running application, (however the Oracle calls don't work--The
> output from running test.pl (included with DBD-Oracle-0.31) is appended
> below).

That's a perl compile time error. It's not getting as far as making Oracle calls.

> How do I get the MacPerl application to recognize the new calls? Is there a
> particular location in the Perl  code where these routines should be put to
> bypass the dynamic linking step? Or perhaps there is something else I just
> don't understand. Any pointers graciously accepted.

Since I know very little about Mac's and nothing about MacPerl I hope that
someone on the MacPerl mailing list can help.

> Thanks,
> 
> Keith Campbell
> ------------------------------------------
> # Global symbol "ora_logoff" requires explicit package name.
> File 'Oraperl.pm'; Line 77

Looks like your perl isn't 5.002 (or if it is it's broken).
(I've just 

Tim.