Other installation methods
The primary installation method, as described at https://rustup.rs, differs by platform:
- On Windows, download and run the
rustup-init.exe
built for thex86_64-pc-windows-msvc
oraarch64-pc-windows-msvc
target, depending on your OS architecture. In general, this is the build ofrustup
one 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-host
flag, or after installation viarustup set default-host
. - On Unix, run
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
in your shell. This downloads and runsrustup-init.sh
, which in turn downloads and runs the correct version of therustup-init
executable 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
rustup
with 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
rustup
command available together with proxies for Rust tools such asrustc
andcargo
, picking a default toolchain (e.g.stable
) would usually be enough:$ rustup default stable
As of 2024/07/24, this is the case for DNF.
-
If your package manager has only made the
rustup-init
command available, simply run:$ rustup-init
This will allow you to perform the initial setup of
rustup
, populate all the proxies managed by rustup, and install a default toolchain. When the installation is completed, please make sure that these proxies (usually under$HOME/.cargo/bin
) are exposed via your$PATH
.As of 2024/07/24, this is the case for APT, homebrew and pacman.
Now 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 rustup
1:
$ 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
- 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.