01. はじめの一歩: cargo と Hello, world!
🎯 この章のゴール
- Rust をインストールして
Hello, world!を動かす - Rust のビルドツール Cargo の基本コマンドを覚える
💡 ひとことで言うと
Cargo は Rust の「なんでも係」。プロジェクト作成・ビルド・実行・テスト・ライブラリ管理を全部ひとりでこなします。
インストール
公式のインストーラ rustup を使います(macOS / Linux)。
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustc --version # rustc 1.xx.x と出れば OKWindows は rustup.rs からインストーラをダウンロードします。
アップデートは rustup update の一発です。
Hello, world!
cargo new hello
cd hello
cargo runこれだけで Hello, world! が表示されます 🎉 生成されたファイルを見てみましょう。
hello/
├── Cargo.toml # プロジェクトの設定と依存ライブラリ
└── src/
└── main.rs # ここにコードを書くfn main() {
println!("Hello, world!");
}fn main(): プログラムの入口となる関数println!: 文字列を出力して改行する マクロ(!が目印)- 文の終わりには
;
Cargo の基本コマンド
| コマンド | やること |
|---|---|
cargo new <名前> | 新しいプロジェクトを作る |
cargo build | ビルドする(target/debug/ に出力) |
cargo run | ビルドして実行する |
cargo check | ビルドせずにエラーだけ確認(速い!) |
cargo build --release | 最適化してビルド(本番用) |
cargo test | テストを実行する |
cargo fmt / cargo clippy | 整形 / リント |
書いている途中は
cargo checkをこまめに回すのがおすすめ。Rust のコンパイラはエラーメッセージがとても親切で、直し方まで教えてくれます。
🧪 やってみよう
下の書きかけコードの TODO を埋めて、▶ 実行 で確かめよう。
自分の名前と好きな食べ物を 2 行で表示してみましょう。{} で値を埋め込めます。
fn main() {
// TODO: 自分の名前と好きな食べ物に書き換えて、2 行目も追加しよう
println!("{}は{}が好き", "ferris", "カニカマ");
}💡 解答例を見る
fn main() {
println!("{}は{}が好き", "ferris", "カニカマ");
println!("{}の好きな食べ物は{}です", "ferris", "お寿司");
}📝 まとめ
- Rust のインストールは
rustup、プロジェクト管理はcargo cargo new→cargo runで即実行、cargo checkで素早く検査!付きの呼び出しはマクロ
✅ 理解度クイズ
Q1
新しいプロジェクト
hello を作るコマンドはどれ?cargo new <名前> で Cargo.toml と src/main.rs を含むプロジェクトが作られます。rustup はツールチェーン(Rust 本体)の管理ツールです。
Q2
println! の末尾の ! は何を意味する?! が付いているのは マクロ の呼び出しです。マクロはコンパイル時にコードを展開する仕組みで、可変個の引数を受け取れます。
Q3
コンパイルせずに「型エラーなどがないか」だけを素早く確認したい。使うコマンドは?
cargo check は実行ファイルを生成せずに検査だけ行うので cargo build より速く、書きながら何度も回すのに向いています。
Q4
依存クレート(ライブラリ)を書くファイルはどれ?
依存は Cargo.toml の [dependencies] に書きます。Cargo.lock は実際に解決されたバージョンを記録するファイルで、手で編集しません。