Perl 5.12.3 C / C ++ Code Failure in PUSHMARK (SP); with segmentation error on Solaris 5.9

I have C / C ++ code that uses perlcall to call perl scripts and works with Perl version 5.8.90. Due to some memory leak / heap corruption in 5.8.90, we planned to use 5.12.3, the latest version of perl.

When using libperl.so version 5.12.3, our program crashes when calling "PUSHMARK (SP)"; I tried to debug in dbx, but I could only get the following information t @ 32 (l @ 32), completed with a SEGV signal (without displaying on the fault address)

Please let me know if any authority has encountered this problem. Any pointers to find the root cause would be very helpful.

+7
source share
2 answers

I close the stream based on my research.

Ysth - Thanks for the info. Actually, when creating my binary, I did not copy the new header files from 5.12.3 to fix the path. After using the new header files, the problem was resolved.

+1
source

This is possible if your program is trying to access a memory location not in the address space of your program.

Access to memory either belongs to the OS or to another process.

Check out the code for this.

-one
source

All Articles