I have multiple Gentoo machines and one I recently built fresh had this emerge issue: A single perl package tried to update. It failed with a similar message to below, so I tried perl-cleaner --reallyall. This is the first error message I got: In file included from /usr/lib64/perl5/5.34/x86_64-linux-thread-multi/CORE/op.h:673, from /usr/lib64/perl5/5.34/x86_64-linux-thread-multi/CORE/perl.h:4086, from encengine.c:91: /usr/lib64/perl5/5.34/x86_64-linux-thread-multi/CORE/reentr.h:124:16: fatal error: crypt.h: No such file or directory 124 | # include <crypt.h> | ^~~~~~~~~ On a machine that does not have this problem, libxcrypt is installed and provides /usr/include/crypt.h Is there a missing dependency in perl for libxcrypt or one of the other providers? Reproducible: Always Steps to Reproduce: 1. Install fresh system. 2. emerge --sync 3. emerge -DNuq @world 4. Any updated perl packages will generate above error. Actual Results: This might rear its ugly head if you simply try to emerge a perl package that relies on crypt.h Expected Results: Package should emerge Crashed out with above error message.
dev-lang/perl-5.34.0-r{3,5}.ebuild have virtual/libcrypt:= in their RDEPEND. Maybe we need more information about how to trigger this.
I'm very surprised to see this on a _fresh_ system, given fresh systems should already have the libxcrypt migration done too. Please emerge -v1 libxcrypt.
(In reply to Sam James from comment #2) > I'm very surprised to see this on a _fresh_ system, given fresh systems > should already have the libxcrypt migration done too. > > Please emerge -v1 libxcrypt.
I resolved it by emerging libxcrypt. However, I feel that it should somehow be in the dependencies. I don't know how I got where I got, I was hoping to prevent someone else from getting there by talking with you guys about it.
(In reply to Brian McKee from comment #4) > I resolved it by emerging libxcrypt. > > However, I feel that it should somehow be in the dependencies. > > I don't know how I got where I got, I was hoping to prevent someone else > from getting there by talking with you guys about it. The problem is that it _is_ in the dependencies and also that any fresh install is already migrated to libxcrypt...
This is the exact stage file I used to install: stage3-amd64-openrc-20210912T170541Z.tar.xz It should still be in the archives. If there's no way to know, then I'll just keep an eye out on the next install and try to get more information. I might buy a new laptop next year... Brian