Regression in MAKE-GCC-TOOLCHAIN after core-updates merge

  • Open
  • quality assurance status badge
Details
3 participants
  • Carl Dong
  • Ludovic Courtès
  • Morgan Smith
Owner
unassigned
Submitted by
Carl Dong
Severity
normal
C
C
Carl Dong wrote on 22 Oct 2019 21:36
(name . bug-guix@gnu.org)(address . bug-guix@gnu.org)
MwJXRMmJFPPRGU2rlAVNuUk6Ge8fhPo2DoJBvEjy3fZ3zp8Bkrx7h-DKYDB2Z3bm2xQ409MTNcd7TtY8C4TzaB3cf_t0cf7i8pVk49rwseM=@carldong.me
Hi all,

I believe there's been a recent regression w/re MAKE-GCC-TOOLCHAIN. I'm unable
to guix build the following minimal reproducer:

Toggle snippet (7 lines)
(use-modules (gnu packages commencement)
(gnu packages gcc)
(gnu packages base))

(make-gcc-toolchain gcc glibc-2.27)

My guix describe output:
Generation 33 Oct 22 2019 15:07:03 (current)
guix f5d6c88
commit: f5d6c88d0f5e1556295c1a19c46ddfcb7a23107f

The build failure logs can be found here:

Cheers,
Carl Dong
contact@carldong.me
"I fight for the users"
L
L
Ludovic Courtès wrote on 22 Oct 2019 23:09
(name . Carl Dong)(address . contact@carldong.me)(address . 37876@debbugs.gnu.org)
874l00xzbl.fsf@gnu.org
Hello,

Carl Dong <contact@carldong.me> skribis:

Toggle quote (18 lines)
> I believe there's been a recent regression w/re MAKE-GCC-TOOLCHAIN. I'm unable
> to guix build the following minimal reproducer:
>
> (use-modules (gnu packages commencement)
> (gnu packages gcc)
> (gnu packages base))
>
> (make-gcc-toolchain gcc glibc-2.27)
>
> My guix describe output:
> Generation 33 Oct 22 2019 15:07:03 (current)
> guix f5d6c88
> repository URL: https://git.savannah.gnu.org/git/guix.git
> commit: f5d6c88d0f5e1556295c1a19c46ddfcb7a23107f
>
> The build failure logs can be found here:
> https://www.dropbox.com/s/y7sg3m786ziiwvb/gcc-glibc-2.27-7.4.0.drv.log?dl=0

So we see tons of things like:

Toggle snippet (45 lines)
In file included from /gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/include/bits/fcntl.h:61:0,
from /gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/include/fcntl.h:35,
from ../../gcc-7.4.0/gcc/system.h:349,
from ../../gcc-7.4.0/gcc/genchecksum.c:21:
/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/include/bits/fcntl-linux.h:355:27: warning: ISO C++ forbids zero-size array ‘f_handle’ [-Wpedantic]
unsigned char f_handle[0];
^
In file included from ./bconfig.h:3:0,
from ../../gcc-7.4.0/gcc/genchecksum.c:20:
./auto-host.h:2363:16: error: declaration does not declare anything [-fpermissive]
#define rlim_t long
^
/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/include/bits/resource.h:131:18: note: in expansion of macro ‘rlim_t’
typedef __rlim_t rlim_t;
^~~~~~
[…]

../../gcc-7.4.0/gcc/system.h:540:20: error: conflicting declaration of C function ‘const char* strsignal(int)’
extern const char *strsignal (int);
^~~~~~~~~
In file included from /gnu/store/x3jx25cd3q363mr7nbgzrhrv1vza6cf7-gcc-7.4.0/include/c++/cstring:42:0,
from ../../gcc-7.4.0/gcc/system.h:235,
from ../../gcc-7.4.0/gcc/genhooks.c:21:
/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/include/string.h:446:14: note: previous declaration ‘char* strsignal(int)’
extern char *strsignal (int __sig) __THROW;
^~~~~~~~~

[…]

In file included from ../../gcc-7.4.0/gcc/genmodes.c:21:0:
../../gcc-7.4.0/gcc/system.h:488:14: error: conflicting declaration of C function ‘void* sbrk(int)’
extern void *sbrk (int);
^~~~
In file included from ../../gcc-7.4.0/gcc/system.h:294:0,
from ../../gcc-7.4.0/gcc/genmodes.c:21:
/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/include/unistd.h:1044:14: note: previous declaration ‘void* sbrk(intptr_t)’
extern void *sbrk (intptr_t __delta) __THROW;
^~~~

[…]
make[1]: Leaving directory '/tmp/guix-build-gcc-glibc-2.27-7.4.0.drv-0/build'
make: *** [Makefile:934: all] Error 2
command "make" "-j" "48" "FLAGS_FOR_TARGET=-B/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/lib" "LDFLAGS_FOR_TARGET=-B/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/lib -Wl,-dynamic-linker -Wl,/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/lib/ld-linux-x86-64.so.2" "LDFLAGS=-Wl,-rpath=/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/lib -Wl,-dynamic-linker -Wl,/gnu/store/5k8l1l6j8sjws40xvlhs7hqjb68ylf7l-glibc-2.27/lib/ld-linux-x86-64.so.2" "BOOT_CFLAGS=-O2 -g0" failed with status

The ‘configure’ phase shows that ‘strsignal’ and ‘sbrk’ were not quite
found, but this is confusing:

Toggle snippet (20 lines)
checking for strsignal... no
checking for pstat_getstatic... yes
checking for sysconf... no
checking for realpath... yes
checking for sysctl... yes
checking for setrlimit... yes
checking for sysmp... yes
checking for sbrk... no
checking for table... yes
checking for spawnve... no
checking for times... no
checking for spawnvpe... yes
checking for wait3... no
checking for strerror... yes
checking for wait4... yes
checking for strsignal... yes
[…]
checking whether sbrk is declared... yes

Does it work with ‘glibc-2.28’?

We’re not building any such toolchain in CI but we probably should…

Ludo’.
C
C
Carl Dong wrote on 23 Oct 2019 01:17
(name . Ludovic Courtès)(address . ludo@gnu.org)(name . 37876@debbugs.gnu.org)(address . 37876@debbugs.gnu.org)
w2L5yNy0mXE-eXaYMqadAMwO5zrX20al2Diz9b957k-Or4qIVTARNxSNi3yc9UJUjexIeDF_CVBmA9SkbohiSF01tUi_OwWLztsyDu52ivs=@carldong.me
Hi Ludo’,

Toggle quote (2 lines)
> Does it work with ‘glibc-2.28’?

Toggle quote (2 lines)
> We’re not building any such toolchain in CI but we probably should…

I think so too, happy to contribute a patch for the CI after we figure this out.

Cheers,
Carl Dong
contact@carldong.me
"I fight for the users"
C
C
Carl Dong wrote on 23 Oct 2019 17:30
(name . Ludovic Courtès)(address . ludo@gnu.org)(name . 37876@debbugs.gnu.org)(address . 37876@debbugs.gnu.org)
qDvqAx6gH00jze_TdUQvvDvdcbEPR2uQ6UXKP0aogkP9xWyxeBoqFPOpAQ0D3JuXtGqXl1Mrpu-NCgLo88AM1Y8wDVUDTH27LlBseRR9gY4=@carldong.me
Hi all,

Looking closer at the code, the regression seems to be in MAKE-GCC-LIBC in (gnu
packages base), rather than in MAKE-GCC-TOOLCHAIN.

New minimal reproducer:

Toggle snippet (7 lines)
(use-modules (gnu packages commencement)
(gnu packages gcc)
(gnu packages base))

(make-gcc-libc gcc glibc-2.28)

Cheers,
Carl Dong
contact@carldong.me
"I fight for the users"
M
M
Morgan Smith wrote on 24 Oct 2021 13:57
(name . Carl Dong)(address . contact@carldong.me)
BYAPR05MB402377EA6962EB38F754396CC5829@BYAPR05MB4023.namprd05.prod.outlook.com
I tried this today as of commit 49d19b35cebd749510b7dddd773d76a3a96d1358
and it seems to build.

Are you still experiencing this issue?


Morgan
?