Windows版Rustのmsvcビルド環境を作る
ビルド環境容量デカすぎ
関連記事:
WSL2で作るWindows開発環境: Rustが征く(1)
------------------- ↓ 前書きはここから ↓-------------------
Rust製のコマンドラインツールが年々増えている。
最近使ったのはMinecraftのmod管理ツールferium。
(またマイクラかい)
それはさておき、
Rust製のコマンドラインが増えたとなると、
コマンド実行環境が必要となるが、
バイナリ配布でもしてない限り、
ビルドが必要になる。
特にRustコマンドはWindowsとは疎遠になりがち。
なのでちょっとWindowsビルド実行環境を用意しようと思う。
ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪
------------------- ↓ 本題はここから ↓-------------------
ビルド環境をインストール
Rustのビルド環境にはGNU版とMSVC版がある。
GNU版はMsysのようなLinux実行環境上で動くやつ、
MSVC版はVisual C++でビルドするやつだ。
手軽にWindows上でコマンド作るにはMSVC版を使う方がいい。
gsudo winget install Rustlang.Rust.MSVC
RustでMSVC環境でビルドするために、
Visual StudioのC++ライブラリが必要だが、
Visual Studioを丸ごと入れるのではなく、
BuildToolだけインストールする。
gsudo winget install Microsoft.VisualStudio.2022.BuildTools
「Visual Studio Installer」を起動する
「C++によるデスクトップ開発」をチェック
「vxxxビルドツール用C++/CLIサポート(開発)」をチェック
試しにビルド
cargoコマンドでインストールできるrustコマンドをビルドしてみる。
インストールされたコマンドのバージョン管理をするcargo-updateを使う。
cargo install cargo-update
Updating crates.io index
Downloaded cargo-update v8.1.4
・・・
Installed package `cargo-update v8.1.4` (executables `cargo-install-update-config.exe`, `cargo-install-update.exe`)
実行してみる
cargo install-update -a
Updating registry 'https://github.com/rust-lang/crates.io-index'
Package Installed Latest Needs update
cargo-update v8.1.4 v8.1.4 No
No packages need updating.
Overall updated 0 packages.
|ω・) 動いてる
------------------- ↓ 後書きはここから ↓-------------------
アップデートには注意が必要
wingetでインストールするとアプリの管理はwingetでやりたくなるが、
rustパッケージは常に追加であって更新ではない。
なのでアップグレードの際は旧パッケージの削除が必要。
winget uninstall Rustlang.Rust.MSVC
winget install Rustlang.Rust.MSVC
もしすでに重複インストールしてしまうと、
wingetコマンドではコントロールできないので、
「アプリケーションの追加と削除」から古い方を削除する
Discussion