Skip to content

x.py install fails when run outside of Rust source directory #80494

Closed
@tmandry

Description

@tmandry
mkdir -p ~/staging/build
mv ~/rust/config.toml ~/staging/build
cd ~/staging/build
~/rust/x.py install

Fails with:

Install std stage2 (Some(TargetSelection { triple: "aarch64-fuchsia", file: None }))
sh: /usr/local/google/home/tmandry/staging/build/build/tmp/dist/rust-std-nightly-aarch64-fuchsia/install.sh: No such file or directory

And the build/tmp/dist directory does not exist. Here are the contents of ~/staging/build/build:

> tree -L 3 build
build
├── bootstrap
│   ├── CACHEDIR.TAG
│   └── debug
│       ├── bootstrap
│       ├── bootstrap.d
│       ├── build
│       ├── deps
│       ├── examples
│       ├── incremental
│       ├── libbootstrap.d
│       ├── libbootstrap.rlib
│       ├── llvm-config-wrapper
│       ├── llvm-config-wrapper.d
│       ├── rustc
│       ├── rustc.d
│       ├── rustdoc
│       ├── rustdoc.d
│       ├── sccache-plus-cl
│       └── sccache-plus-cl.d
├── cache
│   ├── 2020-11-18
│   │   ├── cargo-beta-x86_64-unknown-linux-gnu.tar.gz
│   │   ├── rustc-beta-x86_64-unknown-linux-gnu.tar.gz
│   │   └── rust-std-beta-x86_64-unknown-linux-gnu.tar.gz
│   └── 2020-11-19
│       └── rustfmt-nightly-x86_64-unknown-linux-gnu.tar.gz
├── dist
│   ├── rust-std-nightly-aarch64-fuchsia.tar.gz
│   └── rust-std-nightly-aarch64-fuchsia.tar.xz
├── tmp
│   ├── empty_dir
│   └── tarball
│       ├── rustc
│       └── rust-std
└── x86_64-unknown-linux-gnu
    ├── lld
    │   ├── bin
    │   ├── build
    │   ├── include
    │   ├── lib
    │   └── lld-finished-building
    ├── llvm
    │   ├── bin
    │   ├── build
    │   ├── include
    │   ├── lib
    │   ├── llvm-finished-building
    │   └── share
    ├── stage0
    │   ├── bin
    │   ├── etc
    │   ├── lib
    │   ├── manifest.in
    │   └── share
    ├── stage0-bootstrap-tools
    │   ├── CACHEDIR.TAG
    │   ├── release
    │   └── x86_64-unknown-linux-gnu
    ├── stage0-rustc
    │   ├── CACHEDIR.TAG
    │   ├── release
    │   └── x86_64-unknown-linux-gnu
    ├── stage0-std
    │   ├── release
    │   └── x86_64-unknown-linux-gnu
    ├── stage0-sysroot
    │   └── lib
    ├── stage0-tools-bin
    │   └── fabricate
    ├── stage1
    │   ├── bin
    │   └── lib
    ├── stage1-rustc
    │   ├── CACHEDIR.TAG
    │   ├── release
    │   └── x86_64-unknown-linux-gnu
    ├── stage1-std
    │   ├── release
    │   └── x86_64-unknown-linux-gnu
    ├── stage2
    │   ├── bin
    │   └── lib
    └── stage2-std
        ├── aarch64-fuchsia
        └── release

When run inside the Rust source dir, everything works.

Metadata

Metadata

Assignees

Labels

C-bugCategory: This is a bug.P-highHigh priorityT-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.regression-from-stable-to-betaPerformance or correctness regression from stable to beta.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions