パッケージ管理(cargo

1$ cargo search パッケージ名
2$ cargo install パッケージ名
3$ cargo new プロジェクト名
4$ cargo build
5$ cargo run
6$ cargo check

brew install rustするとrustcコマンドとcargoコマンドがインストールされます。 パッケージを管理したり、自作パッケージを作成する場合はcargoを使います。

パッケージの階層構造

Rustのパッケージは パッケージ > クレート > モジュールという階層構造になっています。 パッケージは複数のクレートを含むことができます。 モジュールはクレートの中でグループ化されたコードのことです。 また、複数のパッケージをワークスペースにまとめることができます。 公式ドキュメントを読んだり、自作パッケージを作成するときに、このイメージは役に立つと思います。

パッケージインストールしたい(install

1$ cargo install パッケージ名
2$ cargo uninstall パッケージ名

公開されているパッケージのバイナリーをインストールします。 バイナリーは$HOME/.cargo/binにインストールされます。 コマンドとして実行する場合、シェルのPATH設定が必要です。

自作パッケージを作成したい(new

1$ cargo new プロジェクト名

cargo newすると必要なファイル一式が自動で生成されます。 パッケージ名はsnake_caseにする必要があります。

1$ tree -a .
2.
3├── .git/
4├── Cargo.toml
5└── src
6    └── main.rs

作成されたディレクトリの中身を確認すると、Git関係のファイルも生成されていました。

ビルドしたい(build

1$ cargo build
2$ cargo build --release

ビルド&実行したい(run

1$ cargo run

ビルドできるかを確認したい(check

1$ cargo check

実行ファイルを作成せずに、ビルド可能かを確認できます。 cargo buildより高速に動作するので、コードを書きながらチェックするのにもってこいです。

外部クレートを追加したい(add

1$ cargo add パッケージ名
2$ cargo remove パッケージ名

自作パッケージが依存する外部クレートを追加する場合はcargo addします。 依存関係はCargo.tomlに保存されます。

外部クレートを更新したい(update

1$ cargo update
2$ cargo update --dry-run

依存している外部クレートを更新する場合はcargo updateします。 最新版がインストールされ、Cargo.lockが更新されます。

ドキュメントを作成したい

1$ cargo doc  # プロジェクトのドキュメントを作成
2$ cargo doc --open  # 作成したドキュメントを開く

cargo docでプロジェクトのドキュメントを作成できます。 依存している外部クレートのドキュメントも同時に取得できます。