1 |
Hi Glenn, |
2 |
|
3 |
> Here is what I get with a fresh bootstrap. |
4 |
> |
5 |
> |
6 |
/opt/packages/gpjohnsn/prefix/var/tmp/portage/sys-devel/gcc-10.3.0-r2/work/gcc-10.3.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:142:10: |
7 |
fatal error: crypt.h: No such file or directory |
8 |
> 142 | #include <crypt.h> |
9 |
> | ^~~~~~~~~ |
10 |
> compilation terminated. |
11 |
|
12 |
Just ran into the same problem right now. The problem is that the current |
13 |
~amd64 version of glibc in the tree does not install crypt.h anymore. I |
14 |
faked its presence by copying over the missing file from the host system: |
15 |
|
16 |
~$ cp /usr/include/crypt.h ${EPREFIX}/usr/include |
17 |
|
18 |
Afterwards, gcc should compile. You will run into the next problem |
19 |
immediately: a circular dependency via virtual/libcrypt -> libxcrypt -> |
20 |
perl -> virtual/libcrypt. However, libxcrypt needs perl as a build |
21 |
dependency only, so if your host system has it installed, you can add the |
22 |
following two lines to ${EPREFIX}/tmp/etc/portage/profile/package.provided: |
23 |
|
24 |
# temporarily tell portage that perl is already installed |
25 |
dev-lang/perl-5.34.0-r2 |
26 |
|
27 |
Then separately emerge virtual/libcrypt and remove the package.provided |
28 |
file again. Still compiling at the moment, but looking much better so far. |
29 |
Hope this helps. |
30 |
|
31 |
Cheers, |
32 |
Michael |