Rustの開発環境構築

# はじめに
個人的にちょっと触ってみたかったので、VSCodeを使ったRustの開発環境まとめです。
「Hello World」からデバック、実行確認までの忘却録。

## 環境
macOS Monterey: 12.0.1
Vscode: 1.62.3
Xcode13.1.0

## Xcodeのインストール
Homebrewを使うにはCommand line tools for Xcodeが必要。

```
xcode-select --install
```

ここが選択されてなかった場合、選択し直す必要あり。
![スクリーンショット 2021-11-21 20.22.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/3bf705f0-8912-3809-b46c-d1911baa9f6a.png)

## Homebrewのインストール
ここからコピペでインストール
https://brew.sh/index_ja.html

```
brew --version // version確認
brew doctor    // 問題をチェックしてくれるコマンド
// Your system is ready to brewと表示できればok
```

## Rustをインストール
インストールコマンドは以下です。

```
brew install rust
```

Rustのインストールが終わると、`rustc`コマンドが使えるようになることを確認できる。

```
localhost: ~ $ rustc
Usage: rustc [OPTIONS] INPUT

Options:
    -h, --help          Display this message
        --cfg SPEC      Configure the compilation environment
    -L [KIND=]PATH      Add a directory to the library search path. The
                        optional KIND can be one of dependency, crate, native,
                        framework, or all (the default).
    -l [KIND[:MODIFIERS]=]NAME[:RENAME]
                        Link the generated crate(s) to the specified native
                        library NAME. The optional KIND can be one of
                        static, framework, or dylib (the default).
                        Optional comma separated MODIFIERS
                        (bundle|verbatim|whole-archive|as-needed)
                        may be specified each with a prefix of either '+' to
                        enable or '-' to disable.
.....
```

## VSCodeでRustを書く為のExtension
![スクリーンショット 2021-11-21 17.51.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/d6509dd8-9cd5-cfc5-4487-d5096aa5df33.png)
![スクリーンショット 2021-11-21 17.51.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/a31c0055-e5a5-cd21-758b-3ad930b5d5c1.png)
![スクリーンショット 2021-11-21 18.03.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/e09db6ee-744a-0dac-ec56-86e2d43777b1.png)
![スクリーンショット 2021-11-21 19.40.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/ec8326a6-2392-a3b6-98e4-5eb293f9267c.png)
この4つあればDebugも結果もすぐに確認可能です。

## Rustのコードを用意
cargoでプロジェクトの作成をする。

```
cargo new --bin hello_cargo
```
```
Created binary (application) `hello_cargo` package
cd hello_cargo

├── Cargo.toml
├── src
│   └── main.rs
```

`hello_cargo`ディレクトリでVscodeを開く
※ ハマった所として、私はこの上の階層にもディレクトリを作っており、そこでVsocdeを開いていた為、この先のDebug環境設定がうまくいかなかったので、必ず作成したディレクトリを開くこと。

## Debug環境の設定
サイドメニューにある「実行とデバック」を選択し、`launch.json`を作成する。
![スクリーンショット 2021-11-21 18.08.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/c10bc8bb-6e7c-ffd4-8681-00b043465b6c.png)
コマンドパレットが開くため、デバッガーとして、`LLDB`を選択する
![スクリーンショット 2021-11-21 19.48.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/6d45532b-bda4-3f39-4a8e-85b7aa5a2844.png)
ポップアップが出るので「YES」を選択する。
![スクリーンショット 2021-11-21 19.49.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/4714193f-1f2d-fa40-2c15-5b3e33b38d75.png)
`launch.json`の完成。
![スクリーンショット 2021-11-21 19.49.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/7d87a354-6001-2bf2-1947-e47d112fc2bf.png)
Debugが可能になってるはずです。
![スクリーンショット 2021-11-21 19.55.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/e3abfc54-875e-7186-0eab-1dc86a7c3b69.png)
すぐに実行して確認したい時は、下記の矢印部分「Run Code」で下記のようにすぐ確認できます。
![スクリーンショット 2021-11-21 19.56.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1022988/359ca2d7-ee75-795f-fff1-43ef51f1739f.png)
VSCodeですぐに環境設定が出来るので便利でした。

## 完成物
https://github.com/atsutama2/rust