Could you perhaps show us how you run it from the command line?
in reply to running an executable from a cgi script
This piece of code doesn't seem to do much yet (is it meant to be pseudo code?)
Things to think about:
Presumably where you have:
# path to program
my $prog = '/local/path/to/cgi-bin/executableprog';
open(PROG, "| $prog") || die "Can't run '$prog': $!\n";
print PROG "$file\n";
my $pid = open PIPE, "-|";
PIPE and PROG were meant to be talking about the same process?
What's the stuff for a fork for? you're probably better off not worrying about forking (which is a little complex) until you get the basics of reading and writing files and running programs mastered.
exec PROG or die "Cannot open pipe to executableprog: $!";