Skip to content
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

Current Windows nightly misses rust-lld #59661

Closed
phil-opp opened this issue Apr 3, 2019 · 4 comments
Closed

Current Windows nightly misses rust-lld #59661

phil-opp opened this issue Apr 3, 2019 · 4 comments
Labels
C-bug Category: This is a bug. O-windows Operating system: Windows regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.

Comments

@phil-opp
Copy link
Contributor

phil-opp commented Apr 3, 2019

The 2019-04-02 Windows nightly has no rust-lld included uses a different directory for rust-lld so that rustc does not find it anymore. You can see this by downloading the nightly x86_64-pc-windows-msvc archive from https://forge.rust-lang.org/other-installation-methods.html#standalone-installers. In contrast to stable, beta, and earlier nightlies, the current nightly has no rust-nightly-x86_64-pc-windows-msvc/rustc/lib/rustlib/x86_64-pc-windows-msvc/bin folder.

Versions:

rustc 1.35.0-nightly (428943c 2019-04-02)
binary: rustc
commit-hash: 428943c
commit-date: 2019-04-02
host: x86_64-pc-windows-msvc
release: 1.35.0-nightly
LLVM version: 8.0
cargo 1.35.0-nightly (63231f438 2019-03-27)

@jonas-schievink jonas-schievink added C-bug Category: This is a bug. I-nominated regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. O-windows Operating system: Windows labels Apr 3, 2019
@alexcrichton
Copy link
Member

Thanks for the report! @phil-opp can you confirm the exact installer that you're using? I unfortunately don't have a windows machine to reproduce on right now, but both these URLs contains rust-lld.exe in what I believe is the expected location:

@phil-opp
Copy link
Contributor Author

phil-opp commented Apr 3, 2019

@alexcrichton They indeed contain a rust-lld.exe but it seems like the location is wrong.

For https://static.rust-lang.org/dist/2019-04-03/rustc-nightly-x86_64-unknown-linux-gnu.tar.gz :

find -name "rust-lld"
./rustc/lib/rustlib/x86_64-unknown-linux-gnu/bin/rust-lld

For https://static.rust-lang.org/dist/2019-04-03/rustc-nightly-x86_64-pc-windows-msvc.tar.gz :

find -name "rust-lld.exe"
./rustc/bin/rustlib/x86_64-pc-windows-msvc/bin/rust-lld.exe

For https://static.rust-lang.org/dist/2019-04-02/rustc-nightly-x86_64-pc-windows-msvc.tar.gz (the nightly before):

find -name "rust-lld.exe"
./rustc/lib/rustlib/x86_64-pc-windows-msvc/bin/rust-lld.exe

So for some reason the rustlib directory now lives in rustc/bin instead of rustc/lib. I assume that this is the reason that rustc does not find rust-lld anymore on Windows in the latest nightly.

@alexcrichton
Copy link
Member

alexcrichton commented Apr 3, 2019

Heh, an excellent point! Given the regression range this is almost surely https://github.com/rust-lang/rust/pull/59341/files.

cc @o01eg, would you mind taking a look at this? I'm going to post a PR to revert that change in the meantime

phil-opp added a commit to rust-osdev/cargo-xbuild that referenced this issue Apr 3, 2019
phil-opp added a commit to phil-opp/blog_os that referenced this issue Apr 3, 2019
@phil-opp
Copy link
Contributor Author

phil-opp commented Apr 3, 2019

Closing as per my comments in #59668 (comment):

I did some more investigation on #59661 and I'm no longer sure that rustc is at fault here, since all my projects that failed the Windows CI job today use cargo xbuild/xargo in some way. So the problem might as well be that the sysroot build tools do not copy the new directory. I will check this and report back as soon as I can!

Ok, I can now confirm that the problem was that #59341 broke cargo-xbuild/xargo. When we update these tools to copy bin/rustlib too everything works again.

So this revert isn't needed. I'm very sorry for the wrong bug report!

Edit: It seems like projects that don't use cargo-xbuild/xargo are affected as well.

@phil-opp phil-opp closed this as completed Apr 3, 2019
@phil-opp phil-opp reopened this Apr 3, 2019
Centril added a commit to Centril/rust that referenced this issue Apr 3, 2019
Revert rust-lld place changes

Fixes rust-lang#59661.

Instead of rust-lang#59668 it reverts only failed part.
Centril added a commit to Centril/rust that referenced this issue Apr 3, 2019
Revert rust-lld place changes

Fixes rust-lang#59661.

Instead of rust-lang#59668 it reverts only failed part.
bors added a commit that referenced this issue Apr 3, 2019
Revert rust-lld place changes

Fixes #59661.

Instead of #59668 it reverts only failed part.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. O-windows Operating system: Windows regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

3 participants