rust-lang / vscode-rust

Rust extension for Visual Studio Code
https://marketplace.visualstudio.com/items?itemName=rust-lang.rust
Other
1.39k stars 166 forks source link

VSCode fails to start RLS: '--toolchain <toolchain>' requires a value but none was supplied #689

Open tYYGH opened 5 years ago

tYYGH commented 5 years ago

I am learning rust, and only beginning. My setup:

OS: up-to-date 64-bit Archlinux with rustup 1.20.2 and code 1.39.2 installed from the software repositories. Commands run so far:

$ rustup default stable
$ rustup component add rls rust-analysis rust-src

In VS Code :

Command failed: rustup component list --toolchain error: The argument '--toolchain <toolchain>' requires a value but none was supplied USAGE: rustup component list --toolchain <toolchain> For more information try --help
tYYGH commented 5 years ago

It seems, that VS Code is not able to deal with custom paths. In my environment, I have:

CARGO_HOME="$HOME/.local/opt/rust_cargo"
RUSTUP_HOME="$HOME/.local/opt/rustup"
PATH="$HOME/.local/bin:$CARGO_HOME/bin:…"

And VS Code is obviously ignoring both …_HOME variables. I can set CARGO_HOME in the settings, but even then, it is ignored. RUSTUP_HOME cannot even be set. Anyway, VS Code keeps creating ~/.cargo and ~/.rustup… I tried symlinking these to my custom places so that VS Code finds them, but even so, it says that RLS is not found.

By the way, for a new language, I cannot understand how the RUST team chose to place cache, lib, and settings files together, and right inside ~! The XDG specifications are so good at keeping the clutter at bay; too bad they were not followed.

TeHMoroS commented 4 years ago

I've had the same problem, but after some fiddling around, ignoring the issue and proceeding in configuring my Webpack setup, the plugin involved in Webpack handling of Rust-related code (wasm-pack-plugin) started complaining about the lack of a default toolchain.

TL;DR It seems that Arch installation of rustup does not set the default toolchain. After executing the following commands to download and set it up:

rustup install stable
rustup default stable

all problems went away and VSCode is not complaining anymore.

Dieterbe commented 4 years ago

@TeHMoroS thanks for that. i was running into the error from OP on arch linux, running those 2 commands fixed it.

ramonGonzEdu commented 3 years ago

Thanks @TeHMoroS That worked perfectly

ramonGonzEdu commented 3 years ago

nevermind

infiniteregrets commented 2 years ago

Had the same issue on MacOS, but reinstalling rustup fixes it. One of the comments on https://github.com/rust-lang/vscode-rust/issues/622 mentions adding "rust-client.rustupPath": "$HOME/.cargo/bin/rustup" to the settings.json file but that didn't work for me