Ashutosh Sharma <ashu.coek88@gmail.com> writes:
> Here are the list of macros and variables from 'intrpvar.h' file that
> are just defined in perl module but not in plperl on Windows,
> #ifdef PERL_USES_PL_PIDSTATUS
> PERLVAR(I, pidstatus, HV *) /* pid-to-status mappings for waitpid */
> #endif
> #ifdef PERL_SAWAMPERSAND
> PERLVAR(I, sawampersand, U8) /* must save all match strings */
> #endif
I am really suspicious that this means your libperl was built in an unsafe
fashion, that is, by injecting configuration choices as random -D switches
in the build process rather than making sure the choices were recorded in
perl's config.h. As an example, looking at the perl 5.24.1 headers on
a Fedora box, it looks to me like PERL_SAWAMPERSAND could only get defined
if PERL_COPY_ON_WRITE were not defined, and the only way that that can
happen is if PERL_NO_COW is defined, and there are no references to the
latter anyplace except in this particular #if defined test in perl.h.
Where did your perl installation come from, anyway? Are you sure the .h
files match up with the executables?
regards, tom lane