I have this C++ program which reads in this large binary file, does some cpu and memory intensive calculations, and then prints two numbers to the STDOUT on one line. Now when I run this C++ program using a system call everything runs fine and I get the 2 numbers on the STDOUT that I am looking for. With the backtick operator however I get a memory segmentation violation. What is different in the way perl runs system and backtick ? I thought both of them do a exec, fork, and wait. I am not sure if the memory leak is in my program now or the perl backtick operator. I can repeat this segmentation violation only with the backtick operator in a perl script. The C++ program runs fine off the command line, and the perl system call. I am throughly confused. Any help from you monks would be greatly appreciated.
I am running perl version 5.005_02 built for sun4-solaris (activestate built).