Skip to content

Current Windows nightly misses rust-lld #59661

@phil-opp

Description

@phil-opp
Contributor

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)

Activity

added
C-bugCategory: This is a bug.
T-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.
O-windowsOperating system: Windows
on Apr 3, 2019
alexcrichton

alexcrichton commented on Apr 3, 2019

@alexcrichton
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

phil-opp commented on Apr 3, 2019

@phil-opp
ContributorAuthor

@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

alexcrichton commented on Apr 3, 2019

@alexcrichton
Member

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

phil-opp commented on Apr 3, 2019

@phil-opp
ContributorAuthor

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.

added a commit that references this issue on Apr 3, 2019
4688691
added a commit that references this issue on Apr 3, 2019
fa2dfda
added a commit that references this issue on Apr 3, 2019
314a79c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.O-windowsOperating system: WindowsT-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.regression-from-stable-to-nightlyPerformance or correctness regression from stable to nightly.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @alexcrichton@phil-opp@jonas-schievink

        Issue actions

          Current Windows nightly misses `rust-lld` · Issue #59661 · rust-lang/rust