I found a solution, though I don't understand it. perl executables that have this at the beginning
Code:
#!/usr/bin/perl
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if $running_under_some_shell;
work.
The build of systemd used another perl script, glib-mkenums, that lacked this preface; I had to 'fix' it too to make it work. Almost all perl scripts from other packages have it.