Eclipse can't find crate for std after rustup update

Everything you describe here sounds strange! I don't recall which situation rustup asks the user to delete rustup before upgrading. I think it probably insists on system installs of rust being uninstalled first, or multirust.sh being uninstalled first though.

Some of this could be fallout from the transition from using the ~/.multirust directory to ~/.rustup - e.g. your eclipse plugin may be aware of the former but not the latter, though rustup is supposed to maintain ~/.multirust as a symlink to ~/.rustup.

~/.cargo/bin being unwritable is indicative of something weird. Maybe an old system/multirust install where cargo install was previously run under sudo.

I don't know what the "couldn't prepare build directories" error means, but it sounds suspiciously like a directory with the wrong permissions.

The PATH should include ~/.cargo/bin. rustup should configure this, but is known to be buggy about it.

To get rustup working again, you might delete ~/.multirust, ~/.rustup, and ~/.cargo (the three of which contain all of the rust installation), and do a fresh install. If that doesn't result in a working rust I would be surprised again.

I don't know anything about the eclipse plugin but imagine it is either just reflecting the busted rust installation, or needs to be updated for compatibility with current rustup.

Sorry for the hassle.