-
-
Notifications
You must be signed in to change notification settings - Fork 14.6k
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
clangMultiStdenv is unable to link i686 code #94023
Comments
I've also encountered this problem, but I switched to |
It's unfortunately not that easy for my use case, I am trying to package something that specifically requires Clang capable of linking both 64-bit and 32-bit code. I rebased my derivation on a checkout of 1f03d49 (last known-good commit for this test) and the build indeed progresses past the first 32-bit linking. I'll try to figure out the exact commit that broke this when I have abit more time at hand. |
@OPNA2608 Oh sorry, I meant that I forgot to report an issue because I found a workaround. I didn't mean to suggest it as a solution. I would still prefer to use |
Been running a git bisect since yesterday, still need to do the final build but it seems like it's homing in on 704daf7 being the breaking commit. |
Bisect indeed blames 704daf7. CC @Ericson2314 because you committed it, can you take a closer look at this? |
Yes this is my fault and I need to fix it. |
Has there been any progress on fixing this? It would be great to have |
I found 4a78b2b to be the first commit introducing the break. |
I marked this as stale due to inactivity. → More info |
Still broken, see https://hydra.nixos.org/build/143310420.
|
Are there any updates on the issue or what we could do to help speed up the development of a fix? For reference, I have tried to use
EDIT: Referencing in @Ericson2314 |
The following patch fixes the issue but we are currently working on a refactoring of the multilib wrappers in #166947.
|
@davidtwco @OPNA2608 @kira-bruneau, can you please test the PR and confirm if it fixes the issue on your end? Thank you! |
Describe the bug
Currently on a local checkout of c83e133,
clangMultiStdenv
is incapable of linking i686 code. If attempting to do so,ld
finds only the x86_64 variants of some of the crucial compiler dependencies. I think this Hydra test is a relevant failure, started failing 2020-07-03.To Reproduce
Steps to reproduce the behavior:
clangMultiStdenv
(specifically this stdenv, not justclang_multi
)Linker will be unable to find any of the gcc dependencies (
-lgcc
,libgcc_s.so.1
,crtbeginS.o
,crtendS.o
, …)Expected behavior
The code compiles fine without any problems. (https://github.com/darlinghq/darling/tree/master/src/libelfloader/native)
Screenshots
(Code is a derivation I've been working on, shouldn't matter for this bug.)
Additional context
Fetching a shell with
clang_multi
and running the same command works fine.Notify maintainers
Don't know who or what broke it, only that it did break at some point.
Metadata
"x86_64-linux"
Linux 4.14.176, NixOS, 19.09.2518.8260cd5bc65 (Loris)
yes
yes
nix-env (Nix) 2.3.3
"nixos-19.09.2518.8260cd5bc65"
"unstable-20.09pre235279.5717d9d2f7c, stable-19.09.1686.69ed29f5f41"
/nix/var/nix/profiles/per-user/root/channels/nixos
(I know I should update my system)
Maintainer information:
The text was updated successfully, but these errors were encountered: