🤡

Rust開発のはじめかた

2022/01/24に公開

Rust開発を行う為に、なるべく簡単でシンプルな方法で環境構築します。今時は特に理由が無ければローカルを汚さないようにDocker + VS Codeで構築するのが良いでしょう。

インストール

Docker

まずはDockerをインストール。ここではお手軽にDocker Desktop。
https://www.docker.com/products/docker-desktop

VS Code

VS Codeも環境に合わせてインストール。
https://code.visualstudio.com/

VS Code Plugins

リモートコンテナ開発の必須プラグインと、必須ではないですがRust用の開発効率アップのプラグインを入れていきます。いずれもそのままでRemoteContainer内で有効です。

rust-analyzer はファイルの保存時にClippyでチェックする設定がオススメです。
clippy setting

settings.json
"rust-analyzer.checkOnSave.command": "clippy"

コンテナの作成

コンテナの作成は、左下の [><] ボタンから「Open Folder in Container...」を選択します。
Container Button

ファイルダイアログが開くので、コンテナにマウントする作業用フォルダを選択、または作成してOpenします。
「Add Development Container Configuration Files」の選択肢から「Rust」を選択してコンテナを作成します。OSや追加機能はデフォルトでOKです。

初回のコンテナのダウンロードとビルドが走り、完了すると作業フォルダが開き、左下の [><] ボタンを見るとコンテナ内であるのがわかります。
Container Button

そして、View -> Terminal からターミナルを開き、rustc のバージョンを確認します。

vscode ➜ /workspaces/test_rs $ rustc --version
rustc 1.56.1 (59eed8a2a 2021-11-01)

また、必須ではありませんが、ビルドターゲットがContainerにマウントされたローカルディレクトリだとビルドに大変時間がかかり開発効率が良くありません。
デプロイ用のビルドは別に考えるとして、開発中は速度アップの為に .devcontainer > Dockerfile に以下のようにビルドディレクトリを変更する設定を追加しておくと開発がしやすくなります。

ENV CARGO_BUILD_TARGET_DIR=/tmp/target

プロジェクトの作成

続いて Cargo で Rust プロジェクトを作成します

$ cargo new hello

実行して確認しましょう。

$ cd hello
$ cargo run
Hello, World!

まずはここまでで、開発をスタートするまでのセットアップは完了です。

参考記事

https://qiita.com/yagince/items/077d209ecca644398ea3
https://users.rust-lang.org/t/how-to-use-clippy-in-vs-code-with-rust-analyzer/41881

Discussion