前提
項目 | 説明 |
---|---|
OS | MacOSX 10.11.2 |
Rust | 1.7.0 stable |
検証日時 | 2016.03.25 |
rustupに乗り換えました。(2016.05.29追記)
インストール
$ brew install multirust
$ multirust
Usage: multirust <command> [--verbose] [--version]
Commands:
default Set the default toolchain
override Set the toolchain override for the current directory tree
update Install or update a given toolchain
show-override Show information about the current override
show-default Show information about the current default
list-overrides List all overrides
list-toolchains List all installed toolchains
remove-override Remove an override, for current directory unless specified
remove-toolchain Uninstall a toolchain
run Run a command in an environment configured for a toolchain
delete-data Delete all user metadata, including installed toolchains
upgrade-data Upgrade the ~/.multirust directory from previous versions
doc Open the documentation for the currently active toolchain
which Report location of the currently active Rust tool.
help Show help for this command or subcommands
Use `multirust help <command>` for detailed help.
$ multirust --version
multirust 0.7.0 (b222fcd27 2015-09-24 10:53:38 -0700)
デフォルトのツールチェインを設定。もし指定したツールチェインがない場合はインストールもする。
$ multirust show-default
multirust: no default toolchain configured. run `multirust help default`
$ multirust default stable
multirust: using existing install for 'stable'
multirust: default toolchain set to 'stable'
で、確認。
$ multirust show-default
multirust: default toolchain: stable
multirust: default location: /Users/force/.multirust/toolchains/stable
rustc 1.7.0 (a5d1e7a59 2016-02-29)
cargo 0.8.0-nightly (28a0cbb 2016-01-17)
オーバーライド
設定するとディレクトリ毎にデフォルトのツールチェインを上書いて、設定できる。
設定しなければデフォルトのツールチェインを使う。
$ mkdir hoge && cd hoge
$ multirust show-override
multirust: no override
multirust: default toolchain: stable
multirust: default location: $HOME/.multirust/toolchains/stable
rustc 1.7.0 (a5d1e7a59 2016-02-29)
cargo 0.8.0-nightly (28a0cbb 2016-01-17)
no override
になってるので、nightly
にしてみる。
$ multirust override nightly
multirust: using existing install for 'nightly'
multirust: override toolchain for '$HOME/hoge' set to 'nightly'
$ multirust show-override
multirust: override toolchain: nightly
multirust: override location: $HOME/.multirust/toolchains/nightly
multirust: override reason: directory override for '$HOME/hoge'
rustc 1.9.0-nightly (98f0a9128 2016-03-23)
cargo 0.10.0-nightly (61ad6a0 2016-03-22)
オーバーライドの一覧
$ multirust list-overrides
/path/to/hoge;nightly
ツールチェインを指定して何かを実行したい
$ multirust run nightly cargo build
toolchainのアップデート
$ multirust update
各ツールチェイン(stable
,beta
,nightly
)自体の更新。
multirustインストール直後は何もないので実行しておく。
あとはメジャーバージョンアップした時、nightlyがっつり追いかける人は1日1回くらい実行しておくと良い。
ドキュメントを見る
$ multirust doc
現在のツールチェインのドキュメントをブラウザで開いてくれる。
multirust自体のデータ更新&削除
$ multirust upgrade-data
$ multirust delete-data
delete-data
は特に慎重に。
Zsh補完関数
必要であればZsh補完関数も入れる。
色々と補完がきく。