本稿では、Rustのツール「Cargo」について軽く触れてみることを目的とした記事です。
Cargoとは何なのか?
Cargo(カーゴ)はRustのパッケージマネージャーです。(NodeでいうところのNPMやYarnのようなもの)
Cargoのインストール
CargoはRustをインストールすると、付属してついてくるので別途インストールする必要はありません。
Cargoがインストールされているかは、バージョンを表示してみることで確認できます。
$ cargo --version
cargo 1.64.0 (387270bc7 2022-09-16)
Cargoでプロジェクトを作る
Nodeのnpm initと同じように、Cargoでもプロジェクトを作ることができます。
新たにプロジェクトを作るにはcargo newを実行します。
cargo new hello
これを実行すると
helloディレクトリ
.git
.gitignore
Cargo.tomlというパッケージマニフェストファイル(NPMのpackage.jsonのようなもの)
src/main.rs
が生成されます。
main.rsの中身は次のようになっています。
fn main() {
println!("Hello, world!");
}
Cargo.tomlの内容は次のようになっています。
[package]
name = "hello"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
Cargo.tomlの中身は、パッケージ名やバージョンなどが最初から設定されています。[dependecies]には、パッケージが依存するパッケージが列挙される場所ですが、生成時点ではどのパッケージにも依存しないので、空欄になっています。
main.rsを実行する
Rustは基本的にコンパイル(rustc)して、実行ファイルを作らないとRustコードは実行できません。コンパイルから実行までの一通りの流れをコマンドひとつでできる機能がCargoにはあります。
次のようにcargo runにRustファイルを指定して実行すると、コンパイルから実行までを行うことができます。
cargo run src/main.rs
この出力結果は次のようになります。
Compiling hello v0.1.0 (/Users/suin/Desktop/hello)
Finished dev [unoptimized + debuginfo] target(s) in 0.68s
Running `target/debug/hello src/main.rs`
Hello, world!
Cargoには本稿で触れたnewとrun以外にも
build: プロジェクトをビルドする
check: コンパイルチェック
install: パッケージのインストール
などのコマンドがあるので、これらにはまた今度触れてみたいと思います。