If your perl is configured for threads or multiplicity (and yours is both) there must be a
PerlInterpreter *my_perl
in scope before you call almost any of perl's internals.
I've stumbled on this as well, and added the following to each of my functions that made calls to the Perl API:
dTHX;
From what I've been able to piece together, the above macro apparently expands to a declaration of a local my_perl that's appropriate for the currently-running thread.
Am I correct in this? Is what I'm doing here the preferred solution, or should I have declared a global my_perl instead?
sherm--