GNU bug report logs - #49600
[core-updates] gcc-11 fails to cross-compile from x86_64-linux

Previous Next

Package: guix;

Reported by: Thiago Jung Bauermann <bauermann <at> kolabnow.com>

Date: Sat, 17 Jul 2021 00:05:01 UTC

Severity: normal

To reply to this bug, email your comments to 49600 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#49600; Package guix. (Sat, 17 Jul 2021 00:05:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Thiago Jung Bauermann <bauermann <at> kolabnow.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sat, 17 Jul 2021 00:05:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Thiago Jung Bauermann <bauermann <at> kolabnow.com>
To: bug-guix <at> gnu.org
Subject: [core-updates] gcc-11 fails to cross-compile from x86_64-linux
Date: Fri, 16 Jul 2021 21:04:24 -0300
Hello,

On core-updates (at least as of commit 8456581375cf), the gcc package fails 
to cross-compile. This can be seen in the following CI jobs:

• https://ci.guix.gnu.org/build/667365/details
  gcc-11.1.0, arm-linux-gnueabihf.gcc.x86_64-linux
• https://ci.guix.gnu.org/build/667394/details
  gcc-11.1.0, aarch64-linux-gnu.gcc.x86_64-linux
• https://ci.guix.gnu.org/build/667452/details
  gcc-11.1.0, powerpc64le-linux-gnu.gcc.x86_64-linux
• https://ci.guix.gnu.org/build/667481/details
  gcc-11.1.0, riscv64-linux-gnu.gcc.x86_64-linux
• https://ci.guix.gnu.org/build/667336/details
  gcc-11.1.0, mips64el-linux-gnu.gcc.x86_64-linux
• https://ci.guix.gnu.org/build/667423/details
  gcc-11.1.0, powerpc-linux-gnu.gcc.x86_64-linux

They all fail with a similar error:

--8<---------------cut here---------------start------------->8---
    ⋮
In file included from /tmp/guix-build-gcc-11.1.0.drv-0/build/arm-linux-gnueabihf/libstdc++-v3/include/bits/move.h:57,
                 from /tmp/guix-build-gcc-11.1.0.drv-0/build/arm-linux-gnueabihf/libstdc++-v3/include/bits/nested_exception.h:40,
                 from ../../../../gcc-11.1.0/libstdc++-v3/libsupc++/exception:148,
                 from ../../../../gcc-11.1.0/libstdc++-v3/libsupc++/eh_exception.cc:26:
/tmp/guix-build-gcc-11.1.0.drv-0/build/arm-linux-gnueabihf/libstdc++-v3/include/type_traits:971:25: error: there are no arguments to ?__is_nothrow_constructible? that depend on a template parameter, so a declaration of ?__is_nothrow_constructible? must be available [-fpermissive]
  971 |       = __bool_constant<__is_nothrow_constructible(_Tp, _Args...)>;
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/guix-build-gcc-11.1.0.drv-0/build/arm-linux-gnueabihf/libstdc++-v3/include/type_traits:971:25: note: (if you use ?-fpermissive?, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/tmp/guix-build-gcc-11.1.0.drv-0/build/arm-linux-gnueabihf/libstdc++-v3/include/type_traits:971:66: error: template argument 1 is invalid
  971 |       = __bool_constant<__is_nothrow_constructible(_Tp, _Args...)>;
      |                                                                  ^
/tmp/guix-build-gcc-11.1.0.drv-0/build/arm-linux-gnueabihf/libstdc++-v3/include/type_traits:976:45: error: expected template-name before ?<? token
  976 |     : public __is_nothrow_constructible_impl<_Tp, _Args...>::type
      |                                             ^
/tmp/guix-build-gcc-11.1.0.drv-0/build/arm-linux-gnueabihf/libstdc++-v3/include/type_traits:976:45: error: expected ?{? before ?<? token
    ⋮
--8<---------------cut here---------------end--------------->8---

In addition to that, arm-linux-gnueabihf.gcc.x86_64-linux has the following
error which doesn’t appear on the other arches:

no include path in which to search for stdc-predef.h

As a side note, gcc-11.1.0 also fails to build on
i586-pc-gnu.gcc.x86_64-linux¹, but with a very different error message,
so it appears to be an unrelated problem.

gcc-8.5.0 also fails to cross-compile on several arches, but with a
different error message as well, so it also appears to be a separate
problem.

-- 
Thanks,
Thiago

¹ https://ci.guix.gnu.org/build/667510/details






Information forwarded to bug-guix <at> gnu.org:
bug#49600; Package guix. (Sat, 17 Jul 2021 00:22:01 GMT) Full text and rfc822 format available.

Message #8 received at 49600 <at> debbugs.gnu.org (full text, mbox):

From: Thiago Jung Bauermann <bauermann <at> kolabnow.com>
To: 49600 <at> debbugs.gnu.org
Subject: [core-updates] gcc-11 fails to cross-compile from x86_64-linux
Date: Fri, 16 Jul 2021 21:20:49 -0300
Hi,

There were several commits added to GCC’s ‘releases/gcc-11’ branch since 
the 11.1.0 release, so I wanted to check whether this problem was fixed by 
any of them.

I applied the patch containing those commits to the gcc-11 package, 
obtained by running the following on a git checkout of the GCC repo:

```
$ git diff releases/gcc-11.1.0..origin/releases/gcc-11 \
	> gcc-11-branch-update.patch
```

At the time, origin/releases/gcc-11 was:

419201f566bb libstdc++: Use function object for __decay_copy helper

Unfortunately it didn’t make a difference.

-- 
Thanks,
Thiago






Information forwarded to bug-guix <at> gnu.org:
bug#49600; Package guix. (Wed, 01 Sep 2021 02:03:01 GMT) Full text and rfc822 format available.

Message #11 received at 49600 <at> debbugs.gnu.org (full text, mbox):

From: Sam James <sam <at> gentoo.org>
To: 49600 <at> debbugs.gnu.org
Subject: [core-updates] gcc-11 fails to cross-compile from x86_64-linux
Date: Wed, 1 Sep 2021 03:02:04 +0100
[Message part 1 (text/plain, inline)]
Seem to have hit the same thing in Gentoo (reported as https://bugs.gentoo.org/811294).

Has Guix found a workaround since?


[signature.asc (application/pgp-signature, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#49600; Package guix. (Fri, 26 Nov 2021 19:09:02 GMT) Full text and rfc822 format available.

Message #14 received at 49600 <at> debbugs.gnu.org (full text, mbox):

From: Thiago Jung Bauermann <bauermann <at> kolabnow.com>
To: Sam James <sam <at> gentoo.org>
Cc: 49600 <at> debbugs.gnu.org
Subject: Re: bug#49600: [core-updates] gcc-11 fails to cross-compile from
 x86_64-linux
Date: Fri, 26 Nov 2021 16:07:48 -0300
Hello Sam,

Sorry, I missed your message when you sent it originally and just found it 
now.

Em terça-feira, 31 de agosto de 2021, às 23:02:04 -03, Sam James escreveu:
> Seem to have hit the same thing in Gentoo (reported as
> https://bugs.gentoo.org/811294).
> 
> Has Guix found a workaround since?

No, our cross gcc-11 builds are still hitting this issue. E.g.:

aarch64-linux-gnu.gcc.x86_64-linux:
https://ci.guix.gnu.org/build/1750690/details 

powerpc64le-linux-gnu.gcc.x86_64-linux:
https://ci.guix.gnu.org/build/1750748/details

riscv64-linux-gnu.gcc.x86_64-linux:
https://ci.guix.gnu.org/build/1750777/details

Though I haven’t worked on this issue since I last reported on it.

-- 
Thanks,
Thiago






This bug report was last modified 2 years and 159 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.