Other installation methods
The primary installation method, as described at https://rustup.rs, differs by platform:
- On Windows, download and run the
rustup-init.exebuilt for thex86_64-pc-windows-msvcoraarch64-pc-windows-msvctarget, depending on your OS architecture. In general, this is the build ofrustupone should install on Windows. This will require the Visual C++ Build Tools 2019 or equivalent (Visual Studio 2019, etc.) to already be installed. If you would prefer to install GNU toolchains or the i686 toolchains by default this can be modified at install time, either interactively, with the--default-hostflag, or after installation viarustup set default-host. - On Unix, run
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shin your shell. This downloads and runsrustup-init.sh, which in turn downloads and runs the correct version of therustup-initexecutable for your platform.
rustup-init accepts arguments, which can be passed through the shell script.
Some examples:
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --help
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --no-modify-path
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain nightly
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain none
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --profile minimal --default-toolchain nightly
Using a package manager
Please note that the rustup project is not maintaining any package mentioned in this section. If you have encountered any problems installing
rustupwith a package manager, please contact the package maintainer(s) for further information.
General tips
Different package managers take slightly different approaches towards managing rustup. After installing rustup with your favorite package manager, there are usually two possibilities:
-
If your package manager has made the
rustupcommand available together with proxies for Rust tools such asrustcandcargo, picking a default toolchain (e.g.stable) would usually be enough:$ rustup default stableAs of 2024/12/23, this is the case for APT, homebrew and pacman.
-
If your package manager has only made the
rustup-initcommand available, simply run:$ rustup-initThis will allow you to perform the initial setup of
rustup, populate all the proxies managed by rustup, and install a default toolchain.As of 2024/12/23, this is the case for DNF.
When the installation is completed, please make sure that the rustup proxies
(usually under $HOME/.cargo/bin) are correctly exposed via your $PATH,
and you should be able to run rustup, rustc, cargo, etc. normally.
APT
Starting from Debian 13 (trixie) and Ubuntu 24.04 (noble),
you may use apt to install rustup:
$ sudo apt install rustup
Homebrew
You can use brew to install rustup1:
$ brew install rustup
Please note that Rust tools like rustc and cargo are not available via $PATH by default
in this rustup distribution
(see homebrew-core#177582 for more details).
You might want to add $(brew --prefix rustup)/bin to $PATH to make them easier to access.
This is not to be confused with the rust package,
which is a brew-managed rust toolchain installation.
Manual installation
You can manually download rustup-init for a given target from
https://static.rust-lang.org/rustup/dist/{target-triple}/rustup-init[.exe]2 3.
Direct links
- aarch64-apple-darwin
- aarch64-linux-android
- aarch64-pc-windows-msvc
- aarch64-unknown-linux-gnu
- aarch64-unknown-linux-musl
- arm-linux-androideabi
- arm-unknown-linux-gnueabi
- arm-unknown-linux-gnueabihf
- armv7-linux-androideabi
- armv7-unknown-linux-gnueabihf
- i686-apple-darwin
- i686-linux-android
- i686-pc-windows-gnu2
- i686-pc-windows-msvc3
- i686-unknown-linux-gnu
- loongarch64-unknown-linux-gnu
- loongarch64-unknown-linux-musl
- mips-unknown-linux-gnu
- mips64-unknown-linux-gnuabi64
- mips64el-unknown-linux-gnuabi64
- mipsel-unknown-linux-gnu
- powerpc-unknown-linux-gnu
- powerpc64-unknown-linux-gnu
- powerpc64le-unknown-linux-gnu
- powerpc64le-unknown-linux-musl
- s390x-unknown-linux-gnu
- x86_64-apple-darwin
- x86_64-linux-android
- x86_64-pc-windows-gnu2
- x86_64-pc-windows-msvc3
- x86_64-unknown-freebsd
- x86_64-unknown-illumos
- x86_64-unknown-linux-gnu
- x86_64-unknown-linux-musl
- x86_64-unknown-netbsd
To get a previous version, use
https://static.rust-lang.org/rustup/archive/{rustup-version}/{target-triple}/rustup-init[.exe].
SHA-256 checksums are also available by appending .sha256 to the link.
Windows GNU builds require no additional software for basic use. However, many library crates will not be able to compile until the full MSYS2 with MinGW has been installed.
MSVC builds of rustup additionally require an installation of
Visual Studio 2019 or the Visual C++ Build Tools 2019. For Visual
Studio, make sure to check the “C++ tools” and “Windows 10 SDK” option.
Self-compiled installation
To install rustup from source, check out the git repository from
https://github.com/rust-lang/rustup and run cargo run --release. Note that
after installation the rustup toolchains will supersede any pre-existing
toolchains by prepending ~/.cargo/bin to the PATH environment variable.