The shell used by perl to make system calls is by default "/bin/sh". The shell might not be functional due to the incompatibility of host and prefix libc. The problem is hard to detect, but manifests itself especially when LD_PRELOAD or LD_LIBRARY_PATH is set, for example, during perl buliding by miniperl. The most robust and future-proof way to handle this is to pass sh=EPREFIX/bin/sh and targetsh=EPREFIX/bin/sh to Configure. See the attached patch.
Created attachment 436232 [details, diff] perl-sh-path.patch Hi Perl team, please help review this patch to see if it is okay to commit. The patch is for Prefix, but will not affect vanilla gentoo.
commit 2c673b1fc6f3c660b4f27bf86ae2d5c49da17ff0 Author: Andreas K. Hüttel <dilfridge@gentoo.org> Date: Sat Jun 4 01:28:31 2016 +0200 dev-lang/perl: Add revbump (unkeyworded, work in progress) for adding some patches. Add fix for bug 584890 by Benda Xu. Package-Manager: portage-2.3.0_rc1 dev-lang/perl/files/eblits/common-v50240002.eblit | 71 +++++++++++++++++++++++++++++++++++++++++ dev-lang/perl/files/eblits/src_configure-v50240002.eblit | 192 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ dev-lang/perl/perl-5.24.0-r1.ebuild | 126 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 389 insertions(+) I'll put the keywords back in after some more stuff is added.
Thanks Andreas!