他のインストール方法
どのインストーラを使うべきか
Rustは様々なプラットフォームで動き、多くのインストール方法があります。 最も素直で推奨される方法でインストールしたいならメインのインストールページの指示に従って下さい。
メインのインストールページではrustup
を使ったインストール方法が説明されています。
rustup
はRustがサポートするプラットフォームで複数のRustのツールチェーンを一貫した方法で管理してくれます。
では、どうしてrustupを使わ ない 方法でインストールする必要があるのでしょうか。
- オフラインなインストール。
rustup
はコンポーネントを必要に応じてインターネットからダウンロードします。 インターネットを経由せずRustをインストールしたいのなら、rustup
は適さないでしょう。 - パッケージマネージャを使いたいから。 Linuxでは特に、しかしmacOSでのHomebrewやWindowsでのChocolateyでも、プラットフォームのパッケージマネージャでRustをインストールしたい開発者もいるでしょう。
curl | sh
を使いたくない。 Unixではrustup
をcurl
経由でシェルスクリプトを実行してインストールします。 セキュリティ上の懸念からこの方法を好まず、インストーラ自身をダウンロードしてインストールしたい人もいます。- 署名を検証したい。
rustup
はHTTPSでダウンロードしますが、現行のRustインストーラの署名を検証するにはスタンドアロンインストーラを手でインストールするしかありません。 - WindowsでGUIを使ってインストールし、「プログラムの追加/削除」で管理したい。
rustup
はコンソール上で動き、よくあるWindowsのプログラムのようにインストールを登録しません。 Windowsでよくあるプログラムのようにインストールしたいなら、スタンドアロンの.msi
インストーラがあります。 将来、rustup
もWindowsではGUIインストーラを追加するはずです。
Rustのプラットフォームサポートは3階級で定義されてて、ほぼ利用可能なインストール方法に対応します。
一般に、Rustプロジェクトは1級、2級のプラットフォームにバイナリビルドを提供していて、rustup
からインストール出来ます。
しかし2級のプラットフォームのいくつかは標準ライブラリのみインストール可能で、コンパイラ自身はインストール出来ません。
これは、クロスコンパイルのターゲットでしかないということです。Rustのコードはそのプラットフォームで動きますが、コンパイラ自身は動きません。
クロスコンパイルのターゲットは rustup target add
コマンドで追加出来ます。
rustup
をインストールする他の方法
rustup
をインストールする方法はプラットフォーム毎に異なります。
- Unixではシェルから
curl https://sh.rustup.rs -sSf | sh
を実行します。 これはrustup-init.sh
をダウンロードし、実行します。 このスクリプトはご使用のプラットフォーム向けの適切なバージョンのrustup-init
をダウンロードし、実行します。 - Windowsでは、
rustup-init.exe
をダウンロードし、実行します
rustup-init
は対話的に設定でき、全てのオプションはコマンドライン引数から制御可能です。
コマンドライン引数はシェルスクリプトから渡せます。
以下のようにrustup-init
に--help
を渡すとrustup-init
が受け付ける引数が表示されます。
curl https://sh.rustup.rs -sSf | sh -s -- --help
シェルスクリプトを使いたくないなら、それぞれのプラットフォーム向けのrustup-init
を自身で選んで直接ダウンロード出来ます。
スタンドアロンなインストーラ
公式のRustのスタンドアロンなインストーラは単一のRustのリリースを内包していて、オフラインでのインストールに適しています。
3種類の形式があります。どんなUnixライクな環境でも動くtarball(.tar.gz
拡張子)、Windowsインストーラ(.msi
)、ししてMacインストーラ(.pkg
)。
これらのインストーラはrustc
、cargo
、rustdoc
、標準ライブラリ、標準ドキュメントを提供しますが、rustup
のように追加のクロスコンパイルターゲットは提供しません。
これらを使うよくある理由は
- オフラインのインストール
- Windowsプラットフォームに統合された、視覚的なインストーラの方が良い
これらのバイナリはRustの署名鍵でRustのビルド基盤でGPGで署名されていてます。
この鍵はkeybase.ioから入手可能です。
以下のテーブルでは asc
ファイルは署名です。
過去のリリースはアーカイブにあります。
Stable (1.31.0)
Beta (1.32)
Nightly (1.33)
ソースコード