in reply to pod2usage does not work for verbose level 1.

Use explicit arguments to Pod::Usage to remove the ambiguity of what the number represents:
if ($opt_help) { pod2usage({ -verbose => 1, -exitval => 0 }); }
--
Andreas