Okay, here's an update. I don't think I've solved the problem fully, because I'm pretty sure there's still a SIGSEGV occurring (I just haven't seen it today yet). However, I did find a place where I was inadvertently exiting the application, via a separate module in which the Tk code for the GUI existed. What was happening was that I wanted the GUI to go away after notification, but I did:
Tk::exit;
instead of:
$mw->destroy;
which of course killed the calling-application rather than just the GUI.
I'm still trying to track down the SIGSEGV.
@ARGV=split//,"/:L";
map{print substr crypt($_,ord pop),2,3}qw"PerlyouC READPIPE provides"