Because of bug #422981 the following was added to dev-lang/perl/files/eblits/src_install-v50160001.eblit: [[ -d ${D}/usr/local ]] && rm -r "${D}"/usr/local If the prefix lives somewhere below /usr/local, this will cause the whole perl install to be silently deleted from image. emerge will still succeed, but the installed package will be empty. So perl will actually not be installed while portages will believe it is. Only clue what's going on comes from some messages from postinst: [...] * /usr/share/man/man1/pod2text.1 does not exist! * /usr/share/man/man1/perlpodstyle.1 does not exist! >>> Completed installing perl-5.16.2 into /usr/local/gentoo/var/tmp/portage/dev-lang/perl-5.16.2/image/ find: `/usr/local/gentoo/var/tmp/portage/dev-lang/perl-5.16.2/image/usr/local/gentoo/': No such file or directory find: `/usr/local/gentoo/var/tmp/portage/dev-lang/perl-5.16.2/image/usr/local/gentoo/': No such file or directory find: `/usr/local/gentoo/var/tmp/portage/dev-lang/perl-5.16.2/image/usr/local/gentoo/': No such file or directory find: `/usr/local/gentoo/var/tmp/portage/dev-lang/perl-5.16.2/image/usr/local/gentoo/': No such file or directory >>> Installing (1 of 1) dev-lang/perl-5.16.2 * Unable to establish /usr/local/gentoo//usr/bin/ptar symlink * Unable to establish /usr/local/gentoo//usr/share/man/man1/ptar.1 symlink [...] Reproducible: Always Steps to Reproduce: 1. emerge -1 perl Actual Results: michael@nindamos:~ # which perl /usr/bin/perl Expected Results: michael@nindamos:~ # which perl /usr/local/gentoo/usr/bin/perl
Should be fixed now: - [[ -d ${D}/usr/local ]] && rm -r "${D}"/usr/local + [[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local Thanks
I can confirm. Thank you! Sorry for not spotting the obvious fix myself.