Rust入門

【Rust入門】Cargoを使ったプロジェクト作成とコンパイル方法を分かりやすく解説

【Rust入門】Cargoを使ったプロジェクト作成とコンパイル方法を分かりやすく解説
naoki-hn

Rustプロジェクトを作成する方法基本的なコンパイル手順について解説します。

Rustのプロジェクト作成とコンパイル

Rustでのプログラム開発を始める際には、以下の流れで進めるのが一般的です。

  1. プロジェクトを作成する。
  2. プログラムを書く。
  3. コンパイルして実行する。

この記事では、この基本的な流れにおいてプロジェクト作成とコンパイルの方法を紹介します。

Cargoとは?

Rustには、Cargoという公式のビルドツール兼パッケージマネージャーが標準で付属しています。Cargoを使うことで「プロジェクトの生成」「コードのコンパイル」「外部ライブラリの管理」「テストやドキュメント生成」といった様々な作業を簡単に実施できます。

以降では、Cargoの各種コマンドを使いながら、プロジェクトの作成とコンパイルの流れを紹介していきます。

Rustプロジェクトの作成方法

ここでは、Visual Studio Code (VSCode) を例に説明しますが、実行するコマンドは他の環境でも共通です。まず、任意の場所にRustプロジェクト用のフォルダを作成し、VSCodeでそのフォルダを開きます。(例:D:\RustProject

ターミナルを開き、以下のコマンドを実行してください。

cargo new test_project

以下のように表示があり、指定した名前のフォルダを作成、必要なファイルが自動で生成されます。

cargoによるRustプロジェクトの作成 (cargo new)

Rustプロジェクトのフォルダ構成

cargo new を実行すると、以下のような構成のフォルダやファイルが作成されます。

Rust プロジェクトフォルダ構成

src

srcは、ソースコードを配置するフォルダです。main.rsというRustプログラムファイルも自動で生成がされており、最初は以下のような「Hello, world!」を表示するようなプログラムとなっています。

fn main() {
    println!("Hello, world!");
}

Rustでは、fn main() がエントリーポイントとなります。

target

targetは、プロジェクトをコンパイルした際の成果物が出力されるフォルダです。

Cargo.tomlCargo.lock

Cargo.tomlは、Rustのビルドシステムである中核的な重要なファイルです。Rustプロジェクトごとに必ず1つ存在し、デフォルトでは以下のようになっています。

[package]
name = "test_project"
version = "0.1.0"
edition = "2024"

[dependencies]

[package]セクションでは、プロジェクトの基本情報となるプロジェクト名やバージョンなどを指定し、[dependencies]は、外部のライブラリの依存関係を記載します。

Cargo.lockは、依存ライブラリの正確なバージョンを記録するファイルです。CI/CDやチーム開発で同じ環境を再現するために使われます。(例えば、Cargo.tomlserde="1.0"と記載されていても実際には、1.0.xxxというようなバージョンが使われる可能性があるため、Cargo.lockが必要です)

.gitignore

.gitignoreは、Gitの管理対象から除外したいファイルやフォルダを指定するためのファイルです。初期状態では以下のようになっており、targetフォルダが除外されています。これは、ビルドごとに中身が変わり、サイズも大きくなるためです。

/target

プロジェクトのコンパイルと実行

cargo run (ビルドと実行)

作成したプロジェクトでコンパイルを実行してみましょう。作成したプロジェクトのフォルダに移動し、以下の cargo run コマンドでコンパイルと実行を一括で実行することができます。

cargo run

実行すると以下のようにコンパイルが実行され、main.rsの内容に従って Hello, world! が表示されます。

cargo run 実行結果

cargo build (ビルドのみ)

ビルドだけを行いたい場合は、以下の cargo build コマンドを実行します。

cargo build
cargo build 実行結果

ビルドの成果物は、\target\debug\test_project.exe (Windowsの場合)として生成されます。

--release (リリースのためのコンパイルと実行)

上記で紹介した方法は、デフォルトではデバッグビルドになりますが、本番用や高パフォーマンスを要求する場合にはリリースビルドを行います。リリースビルドでは、以下のように --release をつけて実行します。

cargo run --release 実行結果

リリースビルドをすることで、最適化された実行ファイル(target\release\ 配下)が生成されます。ただし、デバッグビルドよりもコンパイル時間が長くなる傾向があることを理解しておいてください。

本番環境やパフォーマンスのテスト、配布用バイナリの作成の際には必ずリリースのオプションをつけてコンパイルするようにしましょう。

cargo check(実行ファイルを生成しないコンパイル)

以下の cargo check コマンドを使用すると、実行ファイルを生成せずにコンパイルの前段階(構文・型のチェック)だけを高速に行うことができます。

cargo check 実行結果

開発中にエラーがないかを素早く確認したいときや重たいビルドを避けたいときに便利です。

まとめ

Rustプロジェクトを作成する方法とRustの基本的なコンパイル方法について解説しました。

Rustでは、Cargoを使って簡単にプロジェクトの作成、ビルド、実行が可能です。

  • 開発中:cargo run
  • ビルドのみ:cargo build
  • リリース時:cargo run --release
  • エラー確認:cargo check

上記のように、目的に応じてコマンドを柔軟に使い分けましょう。プロジェクト構成や生成されるファイルにも少しずつ慣れていきましょう。

ABOUT ME
ホッシー
ホッシー
システムエンジニア
はじめまして。当サイトをご覧いただきありがとうございます。
私は製造業のメーカーで、DX推進や業務システムの設計・開発・導入を担当しているシステムエンジニアです。これまでに転職も経験しており、以前は大手電機メーカーでシステム開発に携わっていました。

これまでの業務を通じてさまざまなプログラミング言語や技術に触れてきましたが、その中でもRustの設計思想に惹かれ、この言語についてもっと深く学びたい、そしてその魅力を発信していきたいと思い、このサイトを立ち上げました。

自身の学びを整理しつつ、同じようにRustに興味を持つ方のお役に立てるような情報を発信していければと思っています。どうぞよろしくお願いいたします。

※キャラクターデザイン:ゼイルン様
記事URLをコピーしました