Brian Ingerson [29/10/02 18:53 -0800]:
> > I am trying to use Inline from within an embedded perl interpreter. The
> > problem I'm running into is that any method defined as a C function will
> > not cause the .so to be loaded, giving me this type of error:
> >
> > Can't locate object method "new" via package "Yax" (perhaps you forgot to
> > load "Yax"?)
> >
> > The exact same code will run fine when run from a standalone perl script.
This seems like a problem described in the "perlembed" manpage:
Using Perl modules, which themselves use C libraries, from
your C program
If you've played with the examples above and tried to
embed a script that use()s a Perl module (such as Socket)
which itself uses a C or C++ library, this probably hap�
pened:
Can't load module Socket, dynamic loading not available in this perl.
(You may need to build a new perl executable which either supports
dynamic loading or has the Socket module statically linked into it.)
Are you calling perl_parse() with an xs_init function? If you don't know what
I'm talking about, please read the "perlembed" manpage. If that isn't the
problem, then it's certainly possible Inline is getting confused -- you might
be the first to try running Inline from an embedded interpreter.
[Actually, does mod_perl count as an embedded perl interpreter? Because I'm
pretty sure Inline has been used in that context before.]
Later,
Neil