It would be helpful if you could post the first 20
lines of your program.
It is possible that you are not printing the http
header early enough. Try adding a line to print that
header again for debug purposes right at the top of your
program.
Perhaps you are having trouble including a module or
you have a BEGIN block or other initial processing which
dies with an error message (when the browser is expecting
an http header). Carp is good, but why not first try
running it from command line or from browser with that extra
header being printed at the beginning. Then you can
add print statements as milestones to tell you where
your program has gone.
If this fails also check permissions, try chmod 755 yourscript.cgi
also make sure your apache can execute as cgi files
with the extension (.pl or .cgi) which you have decided
to use. Oh and also make sure you are running perl 5 (type
perl -V).