2. Rust でHllo World -- 初めてのパッケージ作成 --
RustをインストールしたのでおなじみのHello Worldプログラムを作って見ましょう。
常々言っていますがまずは公式の情報を見るようにしましょう。リンクは以下です。
Get started - Rust programming language
こちらも以下に手順を書きます。
1. プロジェクトの作成
適当なディレクトリで新規のプロジェクトを作成します。
$ cargo new hello-rust Created binary (application) `hello-rust` package
cargo new
にも色々オプションがありますのでこちらを見ると良いでしょう。
new - The Cargo Book
実行すると以下のような構成のファイルが自動生成されます。
$ tree -a . -L 3 . └── hello-rust ├── .git │ ├── HEAD │ ├── config │ ├── description │ ├── hooks │ ├── info │ ├── objects │ └── refs ├── .gitignore ├── Cargo.toml └── src └── main.rs
.git
ディレクトリや.gitignore
についてはご存知かと思いますので割愛します。
Cargo.toml
ファイルは以下のような内容が自動生成されます。このファイルにはプロジェクトに関する情報や依存関係について記載します。
[package] name = "hello-rust" version = "0.1.0" authors = ["XXXXXX <XXXXXX@XXX.XXX>"] edition = "2018" [dependencies]
src/main.rs
にはアプリケーションのコードを書きます。初期生成時は以下のようになっています。
今回はそのまま使います。
fn main() { println!("Hello, world!"); }
2. 実行
試しに実行して見ましょう。RustにもGoのgo run
のようなコマンドがあるのでそれをプロジェクトのディレクトリ内で実行します。
$ cargo run Compiling hello-rust v0.1.0 (<プロジェクトのディレクトリ>) Finished dev [unoptimized + debuginfo] target(s) in 4.04s Running `target/debug/hello-rust src/main.rs` Hello, world!
上記のようにプログラムの実行とtargetディレクトリ作成が行われていることがわかります。 compileは初期実行時に行われ、以降ファイルが更新されるまでは行われません。
$ cargo run Finished dev [unoptimized + debuginfo] target(s) in 0.15s Running `target/debug/hello-rust` Hello, world!
3. ビルド
ビルド単独で実行することもできます。
こちらも色々オプションがありますのでこちらを見ると良いでしょう。
build - The Cargo Book
$ cargo build Compiling hello-rust v0.1.0 (<プロジェクトのディレクトリ>) Finished dev [unoptimized + debuginfo] target(s) in 0.56s
ビルドされるとtarget/debug
ディレクトリにhello-rust
が作成されるので実行して見ましょう。
$ ./target/debug/hello-rust Hello, world!