Hallo,
open (MAIL, "|$mailprog -t") || die "Can't open Mail!\n";
Zum debuggen würde ich mal "$mailprog -t -f" probieren. (Ich gehe mal davon aus, es handelt sich um sendmail?)
Hinter dem "-f" kannst Du dann ohne Leerzeichen Deine Emailadresse angeben, also so: "$mailprog -t -firgendwer@irgendwo.de". wenn sendmail Probleme beim versenden hat, bekommst Du dann eine Mail, die Dir evtl. weiterhilft.
Keine Ahnung, ob das auf jedem Server geht...
Gruß Henk