Rustup: Rust 1.26.0 fails to install on ARM

Created on 11 May 2018  Â·  36Comments  Â·  Source: rust-lang/rustup

This seems related to #1383, but this time on stable.

armv7$ rustup toolchain install 1.26.0
info: syncing channel updates for '1.26.0-armv7-unknown-linux-gnueabihf'
info: latest update on 2018-05-10, rust version 1.26.0 (a77568041 2018-05-07)
error: component 'rust-docs' for 'armv7-unknown-linux-gnueabihf' is unavailable for download

Most helpful comment

Looks like the nightly build resolves the issues: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain nightly

It's also fixed in beta

All 36 comments

I'm also getting this issue. I've got a dockerfile installing via rustup, and the 1.26.0 release has broken it with this error :)

Same on Aarch64 here!

info: syncing channel updates for 'stable-aarch64-unknown-linux-gnu'
info: latest update on 2018-05-10, rust version 1.26.0 (a77568041 2018-05-07)
error: component 'rust-docs' for 'aarch64-unknown-linux-gnu' is unavailable for download

Will try to look into it :smile:

same here, no Rust 1.26 for me :(

$ rustup update
info: syncing channel updates for 'stable-armv7-unknown-linux-gnueabihf'
info: latest update on 2018-05-10, rust version 1.26.0 (a77568041 2018-05-07)
error: component 'rust-docs' for 'armv7-unknown-linux-gnueabihf' is unavailable for download
info: checking for self-updates

  stable-armv7-unknown-linux-gnueabihf update failed - rustc 1.25.0 (84203cac6 2018-03-25)

Forget updating, if you don't already have a working toolchain you can't even install Rust:

~/ $​​ ​​curl https://sh.rustup.rs -sSf | sh
info: downloading installer

Welcome to Rust!

This will download and install the official compiler for the Rust programming
language, and its package manager, Cargo.

It will add the cargo, rustc, rustup and other commands to Cargo's bin
directory, located at:

  /home/orlp/.cargo/bin

This path will then be added to your PATH environment variable by modifying the
profile files located at:

  /home/orlp/.profile
  /home/orlp/.zprofile

You can uninstall at any time with rustup self uninstall and these changes will
be reverted.

Current installation options:

   default host triple: armv7-unknown-linux-gnueabihf
     default toolchain: stable
  modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
1

info: syncing channel updates for 'stable-armv7-unknown-linux-gnueabihf'
info: latest update on 2018-05-10, rust version 1.26.0 (a77568041 2018-05-07)
error: component 'rust-docs' for 'armv7-unknown-linux-gnueabihf' is unavailable for download

This is on a Raspberry Pi 2 Model B.

I'm having the same issue on a Raspberry Pi 3

I'm having the same issue on a Raspberry Pi Zero W

Ditto here... on Raspberry Pi 3B+

As a check, this also fails on ARMv6

pi@raspberrypi:~ $ cat /proc/cpuinfo 
processor   : 0
model name  : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS    : 697.95
Features    : half thumb fastmult vfp edsp java tls 
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part    : 0xb76
CPU revision    : 7

Hardware    : BCM2835
Revision    : 000f
Serial      : 000000008f3ecf5e
pi@raspberrypi:~ $ curl https://sh.rustup.rs -sSf | sh
info: downloading installer

Welcome to Rust!

This will download and install the official compiler for the Rust programming 
language, and its package manager, Cargo.

It will add the cargo, rustc, rustup and other commands to Cargo's bin 
directory, located at:

  /home/pi/.cargo/bin

This path will then be added to your PATH environment variable by modifying the
profile file located at:

  /home/pi/.profile

You can uninstall at any time with rustup self uninstall and these changes will
be reverted.

Current installation options:

   default host triple: arm-unknown-linux-gnueabihf
     default toolchain: stable
  modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
1

info: syncing channel updates for 'stable-arm-unknown-linux-gnueabihf'
info: latest update on 2018-05-10, rust version 1.26.0 (a77568041 2018-05-07)
error: component 'rust-docs' for 'arm-unknown-linux-gnueabihf' is unavailable for download

Looks like the nightly build resolves the issues: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain nightly

It's also fixed in beta

See rust-lang/rust#49462 – it will apparently be fixed in 1.27, but it's not clear whether there will be a fix for 1.26.

This just looks like an error from a missing file somewhere, why would this
not be fixed until the next release.

On Sun, May 13, 2018, 12:40 PM Josh Holland notifications@github.com
wrote:

See rust-lang/rust#49462 https://github.com/rust-lang/rust/issues/49462
– it will apparently be fixed in 1.27, but it's not clear whether there
will be a fix for 1.26.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/rust-lang-nursery/rustup.rs/issues/1410#issuecomment-388650876,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFDC8rcGJAfeO0vz6rc0Y8c7qcIfmj_Xks5tyIxFgaJpZM4T6z7H
.

😞

# Linux odroid64 3.14.79-117 #1 SMP PREEMPT Tue Jan 2 23:46:30 BRST 2018 aarch64 aarch64 aarch64 GNU/Linux

$ rustup update
info: syncing channel updates for 'stable-aarch64-unknown-linux-gnu'
info: latest update on 2018-05-10, rust version 1.26.0 (a77568041 2018-05-07)
error: component 'rust-docs' for 'aarch64-unknown-linux-gnu' is unavailable for download
info: syncing channel updates for 'nightly-aarch64-unknown-linux-gnu'
info: latest update on 2018-05-14, rust version 1.27.0-nightly (9fae15374 2018-05-13)
error: component 'rust-docs' for 'aarch64-unknown-linux-gnu' is unavailable for download
info: checking for self-updates

   stable-aarch64-unknown-linux-gnu update failed - rustc 1.25.0 (84203cac6 2018-03-25)
  nightly-aarch64-unknown-linux-gnu update failed - rustc 1.26.0-nightly (75af15ee6 2018-03-20)

Version 1.25 can be installed with the command:
rustup toolchain install 1.25.0-aarch64-unknown-linux-gnu

That's nice until you try something (like displaying the --version) and you get this:

error: no default toolchain configured

And then of course, no real way to look this error up as in the past after a successful install Rust just worked. So, how do you configure a default toolchain?

rustup default 1.25.0 should work, if it doesn't it's probably worth doing some Googling :)

On a new board that doesn't already have rustup, it appears you can install 1.25.0, from scratch, using this:

curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.25.0

@CodeCutterUK that worked:
pi@goldpi:~ $ rustup default 1.25.0
info: syncing channel updates for '1.25.0-armv7-unknown-linux-gnueabihf'
info: latest update on 2018-03-29, rust version 1.25.0 (84203cac6 2018-03-25)
info: downloading component 'rustc'
44.8 MiB / 44.8 MiB (100 %) 4.8 MiB/s ETA: 0 s
info: downloading component 'rust-std'
39.6 MiB / 39.6 MiB (100 %) 4.3 MiB/s ETA: 0 s
info: downloading component 'cargo'
3.5 MiB / 3.5 MiB (100 %) 1.5 MiB/s ETA: 0 s
info: downloading component 'rust-docs'
5.7 MiB / 5.7 MiB (100 %) 1.3 MiB/s ETA: 0 s
info: installing component 'rustc'
info: installing component 'rust-std'
info: installing component 'cargo'
info: installing component 'rust-docs'
info: default toolchain set to '1.25.0-armv7-unknown-linux-gnueabihf'

1.25.0-armv7-unknown-linux-gnueabihf installed - rustc 1.25.0 (84203cac6 2018-03-25)

pi@goldpi:~ $ rustc --version
rustc 1.25.0 (84203cac6 2018-03-25)
pi@goldpi:~ $

Could this be backported to stable. It's really bad UX for new users if the language installer fails.

EDIT I'm happy to do this if someone oks it/points me in the right direction.
EDIT 2 For me, rust 1.26.1 fixes the issue.

First installation is still broken on pi2. fpagliughi's workaround helped to get rustup installed

Same issue, had to install beta. Please fix it.

Edit: I wanted to post a bounty, but since Bountysource disabled Bitcoin, I have to offer it here directly. I offer $15 worth of Bitcoin to anyone who manages to fix this until next week.

The 1.26.1 release isn't quite out yet, but you can test whether it works for you with RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup update stable. Some users are still seeing problems, so it would be good to get wider testing to determine if there's something further we can do to resolve this...

ok I'll have a go with this :)

Update:

  • No problems on stable-x86_64-unknown-linux-gnu
  • No problems on Raspberry Pi Zero W (stable-arm-unknown-linux-gnueabihf)

So for me(tm) 1.26.1 fixes the issue.

By the way, the problem @Mark-Simulacrum mentioned above is https://github.com/rust-lang/rust/issues/51097, aka install now works but updated still doesn't.

That one fixed the problem for me too.

@Mark-Simulacrum It worked for me, but what exactly did I install? I mean, 1.26.1 is not officially out, yet I've been able to install it, so did I install some RC version, or is the release process in some phase in which the compiler exists but is not announced for some reason?

@pietroalbini Thank you for the PR! Once rustup will use it, I'll test it and then I'll ask you to send me your Bitcoin address.

This is a preview of what is likely to be the actual artifacts for the release on Tuesday. It's intended for this sort of confirmation testing to ensure that the release works as expected (though of course we've already run tests on CI as well).

Worked for me on an UDOO Neo (i.MX6 SoloX)...

$ RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup update stable
info: syncing channel updates for 'stable-armv7-unknown-linux-gnueabihf'
info: latest update on 2018-05-25, rust version 1.26.1 (827013a31 2018-05-25)
info: downloading component 'rustc'
 49.8 MiB /  49.8 MiB (100 %)   8.2 MiB/s ETA:   0 s                
info: downloading component 'rust-std'
 48.3 MiB /  48.3 MiB (100 %)   7.8 MiB/s ETA:   0 s                
info: downloading component 'cargo'
  3.9 MiB /   3.9 MiB (100 %)   1.2 MiB/s ETA:   0 s                
info: installing component 'rustc'
info: installing component 'rust-std'
info: installing component 'cargo'

  stable-armv7-unknown-linux-gnueabihf installed - rustc 1.26.1 (827013a31 2018-05-25)

$ rustup default stable
info: using existing install for 'stable-armv7-unknown-linux-gnueabihf'
info: default toolchain set to 'stable-armv7-unknown-linux-gnueabihf'

  stable-armv7-unknown-linux-gnueabihf unchanged - rustc 1.26.1 (827013a31 2018-05-25)

$ rustc --version
rustc 1.26.1 (827013a31 2018-05-25)

Still having issues here on a raspberry pi w upgrading to 1.26.1

 $ rustup update stable
info: syncing channel updates for 'stable-arm-unknown-linux-gnueabihf'
info: latest update on 2018-05-29, rust version 1.26.1 (827013a31 2018-05-25)
error: component 'rust-docs' for 'arm-unknown-linux-gnueabihf' is unavailable for download

"Some users will need to run rustup install stable instead of rustup update to make rustup avoid the missing docs component, but this should be a one-time problem."
https://blog.rust-lang.org/2018/05/29/Rust-1.26.1.html

Install also did not work for me. I had to first uninstall and then install again and it worked. Thanks @rosenk !

pi@zero:~ $ rustup install stable
info: syncing channel updates for 'stable-arm-unknown-linux-gnueabihf'
info: latest update on 2018-05-29, rust version 1.26.1 (827013a31 2018-05-25)
error: component 'rust-docs' for 'arm-unknown-linux-gnueabihf' is unavailable for download
pi@zero:~ $ rustup uninstall stable
info: uninstalling toolchain 'stable-arm-unknown-linux-gnueabihf'
info: toolchain 'stable-arm-unknown-linux-gnueabihf' uninstalled
pi@zero:~ $ rustc -v
error: toolchain 'stable' is not installed
info: caused by: not a directory: '/home/pi/.rustup/toolchains/stable-arm-unknown-linux-gnueabihf'
pi@zero:~ $ rustup install stable
info: syncing channel updates for 'stable-arm-unknown-linux-gnueabihf'
info: latest update on 2018-05-29, rust version 1.26.1 (827013a31 2018-05-25)
info: downloading component 'rustc'
 49.3 MiB /  49.3 MiB (100 %)   1.2 MiB/s ETA:   0 s
info: downloading component 'rust-std'
 48.6 MiB /  48.6 MiB (100 %)   1.3 MiB/s ETA:   0 s
info: downloading component 'cargo'
  3.9 MiB /   3.9 MiB (100 %) 853.6 KiB/s ETA:   0 s
info: installing component 'rustc'
info: installing component 'rust-std'
info: installing component 'cargo'

  stable-arm-unknown-linux-gnueabihf installed - rustc 1.26.1 (827013a31 2018-05-25)

pi@zero:~ $ rustc --version
rustc 1.26.1 (827013a31 2018-05-25)

In order to clean everything up, I had to delete (rm -rf) ~/.cache and ~/.rustup, then just do a regular install. I have 1.26.1 installed on a Raspberry Pi 3 Model B+

Yeah, until a new rustup release is done it's not possible to update to 1.26.1, only to install it from scratch.

Was this fixed in the meantime? The arm stages (if rust is >=1.26.0) from static.rust-lang.org do not include the components folder rust-doc, hence the install fails if probing ./install.sh --components=rustc,rust-std-armv7-unknown-linux-gnueabihf,cargo,rust-docs

1.25.0 is fine in this regard.

Once this bug hit I could not update from an existing Rust on a Raspberry Pi. I had to delete ~/.cargo and ~/.rustup and then do a completely new 1.26.1 installation. Once 1.26.1 was installed, I was able to do a Rust update to 1.27.0.

(I know I said ~/.cache in an earlier comment, but I was delirious.)

At the moment, a workaround is to remove and reinstall the toolchain.

This should be fixed already in 1.12

Was this page helpful?
0 / 5 - 0 ratings