I notice that you have
exe_files => ['bin/pgrep'],
in your Build.PL. But there's no such thing as 'exe_files' (the
corresponding parameter is 'script_files', so it's actually defaulting
to finding everything in bin/ .
The easy fix for you would be to change it to 'script_files'.
We still need to fix M::B so it doesn't use the absolute path in the
case that script_files isn't specified explicitly, though.
-Ken