-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gcc: upgrade aarch64-linux default from 9 to 11 #167726
Conversation
So I took this PR out for a spin and unfortunately it seems like the issues which got the GCC 9 -> 10 upgrade reverted have not been solved. For example:
I also noticed this error trying to build the multiplatform GCC, which may provide a clue as I have seen that
On the other hand, the semi-random selection of packages I tried all built fine, with the exception of ones that gave that same sort of DSO error and link failure for aarch64 atomic symbols. I also wonder if this should wait until #148539 is merged, assuming that can be done in a timely manner, so that we can avoid introducing potential problems on aarch64 where gfortran's version != gcc's version. |
I could have sworn I tested exactly that, but now it's failing for me, as well. Thanks for giving this a try though. I'll see if I can figure something out. |
Note: (default?) gcc changes planned for 22.05 freeze in four days now. |
Alright, I figured out the bug: This correctly patches gcc to include a linker script as |
See also #136574 (comment), which is the same issue for Clang. |
I feel between this and #170991 we may want to consider https://github.com/nixos/rfcs/blob/master/rfcs/0046-platform-support-tiers.md and default to GCC 11 for stdenv (tier 1), and sparingly use special cases such as this instead for tier 2 and higher platforms. |
Let's try this again. See NixOS#36947 and NixOS#36948 for history
24dfab6
to
f88a302
Compare
Is this possible to test now? It would be great also to see a writeup about what the issue really was and how it is fixed. The commit history and guts of GCC are not clear to me. |
I think it's still broken, not exactly sure. |
I tried building
|
Well I was able to build @Gaelan can you provide some context for the changes? |
I am able to confirm that these commits specifically fix |
Unfortunately, it looks like the problem with This suggests there's still something fundamentally wrong with the approach proposed here. |
I did some more investigation and So it looks like the crime isn't really that we copy |
I'm happy to look into it ~next week, but no guarantees though. |
Description of changes
Closes #108305
This isn't my expertise, so idk if this is how and where this should be implemented. Also, this should probably be conditional, the way fedora does. Which is why the
if
is there, but I don't know the best place to put this conditional…Things done
sandbox = true
set innix.conf
? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)nixos/doc/manual/md-to-db.sh
to update generated release notes