大雑把に言ってしまうと、cargo initは、カレントディレクトリでcargo newしたいときに使うコマンドです!
new と init
- パッケージ名を入力する場合は
cargo new パッケージ名 - 事前にディレクトリを作成して、パッケージ名を入力しない場合は
cargo init
目次
cargo コマンド
new
Rustで何か作るぞ!となったとき、
最初に使うであろうコマンドがcargo newでしょう。
cargo new パッケージ名new コマンドを実行すると、以下のディレクトリ構成で main.rs 等が作成されます。
–lib オプション
ライブラリを作成する場合は、--libオプションをつける。
cargo new ライブラリ名 --libinit
Github でレポジトリを作成し、クローンしてしまい、
new コマンドだとディレクトリ構成が…という事態に陥りました。
パッケージ名は.で省略できるのでは?と思い立ち、実行してみた。
$ cargo new .
error: destination `/Desktop/temp/.` already exists
Use `cargo init` to initialize the directory結果は失敗。
エラーメッセージにもcargo initを使え、とのこと。
そこで登場するのが、init コマンドです。
cargo initパッケージ名は省略可能で、
省略した場合はカレントディレクトリを root とみなしてくれます。
まとめ
おおまかな違いは以下の通り。
ポイント
- パッケージ名を入力する場合は
cargo new パッケージ名 - パッケージ名を入力しない場合は
cargo init - ライブラリを作成する場合は
cargo new パッケージ名 --lib
まだまだ他にもオプションはありますが、必要に応じて調べてみたいと思います。
著:初田直也, 著:山口聖弘, 著:吉川哲史, 著:豊田優貴, 著:松本健太郎, 著:原将己, 著:中村謙弘, 著:フォルシア株式会社
¥3,208 (2025/09/16 12:23時点 | Amazon調べ)



コメント