はじめに
最近Rustに興味を持ったため、WSL2でRustのtutorialクリアを試みた。あとずっとWSLだったのでWSL2への移行も試みた。
WSLからWSL2へ
結論としては以下を参考にする。
ただし、自分は手順5で詰まった。エラー内容としては
仮想ディスク システムの制限があるため、要求された操作を完了できませんでした。仮想ハード ディスク ファイルは、圧縮と暗号化が解除されている必要があります。また、スパースにすることはできません。
という部分。説明通りにチェックボックスを外しても同じエラーが出てきた。
解決した手順:
1. とりあえず再起動
2. それで同じディレクトリを確認すると該当するチェックボックスにチェックがついてるため外した
3. wsl --set-version <distribution名> <version(今回は2)>
Rust
導入は以下を参考(普通にRustの日本語ドキュメントのlinux部分を参考にしてもいいと思う)
数当てゲームのtomlにrandクレートを書いてビルドする部分で以下の問題が発生した。
warning: spurious network error (2 tries remaining): failed to mmap. Could not write data: Permission denied; class=Os (2)
どうやら、クレートの導入でミスってるっぽい。このエラーで色々検索した結果、以下のサイトに辿り着いた。
解決した手順
1. ~/.cargo/configを作る
2. そこに以下を書き込む
[net]
retry = 2 # network retries
git-fetch-with-cli = true # use the `git` executable for git
3. cargo buildする
これで自分はrandの導入に成功した。現在ここまでしか進めてないので何かあれば追記する。