http://www.perlmonks.org?node_id=800815


in reply to piping to lp is broken after perl upgrade

You should check if open was successful, and also if close was:

open my $output, '|-', $PRINT_CMD or die "Can't open pipe to $PRINT_CMD: $!"; print $output $prolog; ... close $output or warn "Error while closing pipe to $PRINT_CMD: $!";

Maybe that'll give you some clue about what's wrong.

Perl 6 - links to (nearly) everything that is Perl 6.