¡¡¡Gracias, explorer!!!
Como bien dices, aparece en esa web.
Lo explicare por aquí si os parece bien (por si alguien llega al foro y ve la pregunta). (Nota: mi nivel no es alto, así que seguro que habrá una manera más fácil de hacerlo.)
Lo que he hecho para solucionar el problema es crear el fichero:
xsinit.cpp
Using cpp Syntax Highlighting
EXTERN_C void
xs_init(pTHX)
{
char *file = __FILE__;
dXSUB_SYS;
/* DynaLoader is a special case */
newXS("DynaLoader::boot_DynaLoader", boot_DynaLoader, file);
}
Coloreado en 0.003 segundos, usando
GeSHi 1.0.8.4
Con su
header xsinit.h
Using cpp Syntax Highlighting
#include <EXTERN.h>
#include <perl.h>
EXTERN_C void xs_init (pTHX);
EXTERN_C void boot_DynaLoader (pTHX_ CV* cv);
Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Luego en la llamada para introducir los parámetros necesarios para ejecutar el Perl desde C, se modifica:
perl_parse(my_perl, NULL, argc, my_argv,NULL);por
perl_parse(my_perl, xs_init, argc, my_argv,NULL); xs_init() realiza "magia" (indica al intérprete de Perl cómo
linkar los ficheros a usar) y el error desaparece y ya puedes usar normalmente el
use "Modulo::X".
¡Espero que sea de ayuda a todos!
¡Mil gracias, explorer!