RustをmacOSにインストール
macOSへRustを入れるなら、公式サイトに従って行えば楽勝です。 そこで、今回は以下の記事を訳してみました。(私の意訳)
はじめかた
Rustの開発環境を素早く設定し小さいアプリを書く!
Rustをインストールする
Rust Playgroundを使うとあなたのコンピュータに何もインストールしないでオンライン上でRustをお試しできます。
Rustup : Rustインストーラとバージョン管理ツール
Rustをインストールする主な方法はRustupと呼ばれるツールを使うことです。 RustupはRustインストーラとバージョン管理ツールです。
macOSやLinux, その他のUnixライクなOSで動作させているように見えます。 RustupのダウンロードとRustをインストールするには、ターミナルで次のコマンドを実行してから、画面上の指示に従います。
curl https://sh.rustup.rs -sSf | sh
以下、実行後の画面。
info: downloading installer Welcome to Rust! This will download and install the official compiler for the Rust programming language, and its package manager, Cargo. It will add the cargo, rustc, rustup and other commands to Cargo's bin directory, located at: /Users/{user_name}/.cargo/bin This path will then be added to your PATH environment variable by modifying the profile files located at: /Users/{user_name}/.profile /Users/{user_name}/.bash_profile You can uninstall at any time with rustup self uninstall and these changes will be reverted. Current installation options: default host triple: x86_64-apple-darwin default toolchain: stable modify PATH variable: yes 1) Proceed with installation (default) 2) Customize installation 3) Cancel installation >
ここで止まるのは、インストールの仕方について聞かれている。
選択肢は以下の通り。
- インストールをデフォルトで設定する
- カスタマイズしてインストールする
- インストールをやめる
私はデフォルト設定でよかったので、何も書かずEnterを押した。
(何も書かない場合は、「1」を選択したのと同じ意味になるらしい。)
その後は以下のように進む。
info: syncing channel updates for 'stable-x86_64-apple-darwin' info: latest update on 2019-01-17, rust version 1.32.0 (9fda7c223 2019-01-16) info: downloading component 'rustc' 64.5 MiB / 64.5 MiB (100 %) 364.8 KiB/s ETA: 0 s info: downloading component 'rust-std' 49.2 MiB / 49.2 MiB (100 %) 345.6 KiB/s ETA: 0 s info: downloading component 'cargo' 3.4 MiB / 3.4 MiB (100 %) 384.0 KiB/s ETA: 0 s info: downloading component 'rust-docs' 8.5 MiB / 8.5 MiB (100 %) 297.6 KiB/s ETA: 0 s info: installing component 'rustc' info: installing component 'rust-std' info: installing component 'cargo' info: installing component 'rust-docs' info: default toolchain set to 'stable' stable installed - rustc 1.32.0 (9fda7c223 2019-01-16) Rust is installed now. Great! To get started you need Cargo's bin directory ($HOME/.cargo/bin) in your PATH environment variable. Next time you log in this will be done automatically. To configure your current shell run source $HOME/.cargo/env
Cargo : Rustビルドツールとパッケージ管理
Rustupをインストールすると最新安定バージョンのCargo(Rustビルドツールとパッケージ管理)を入手できます。
Cargoは多くのことができます。
コマンド | 内容 |
---|---|
cargo build |
プロジェクトのビルド |
cargo run |
プロジェクトの実行 |
cargo test |
プロジェクトのテスト |
cargo doc |
プロジェクトのドキュメントをビルド |
cargo publish |
crates.io にライブラリを発行する |
RustとCargoがインストールされているか確認するには、ターミナルでcargo --version
を実行すればいい。
その他のツール
Rustは多くのエディターでサポートされている。
整形ツール(Rustfmt)はrustup component add rustfmt
を実行することでインストールできる。
Lintツール(Clippy)はrustup component add clippy
を実行することでインストールできる。
新しいプロジェクトを作成する
さぁ、新しいRust開発環境で小さいアプリケーションを書こう。
始めるためには、Cargoを使って新しいプロジェクトを作る。
ターミナルで以下のコマンドを実行する。
cargo new hello-rust
これは以下のファイルたちと共に「hello-rust」という新しいディレクトリが作成する。
hello-rust |- Cargo.toml |- src |- main.rs
Catgo.toml
はRustのマニフェストファイルです。
これはプロジェクトのメタデータや依存関係を保つためのファイルです。
src/main.rs
はアプリケーションコードを書くファイルです。
cargo new
は「Hello, world!」プロジェクトを作成します!
このプログラムは、作成した新しいディレクトリに移動してターミナルでcargo run
で実行できます。
ターミナルではこのように見えるでしょう。
$ cargo run Compiling hello-rust v0.1.0 (/Users/ag_dubs/rust/hello-rust) Finished dev [unoptimized + debuginfo] target(s) in 1.34s Running `target/debug/hello-rust` Hello, world!
依存関係を追加する
さぁ、依存関係をアプリケーションに追加しましょう。
Rustのパッケージレジストリであるcrates.ioには、あらゆる種類のライブラリがあります。
Rustでは、パッケージを「crates」と呼ぶことがよくあります。
このプロジェクトの中では、ferris-says
と呼ばれるcreateを作成します。
Cargo.toml
ファイルに、(createページから取得した)次のような情報を追加します。
[dependencies] ferris-says = "0.1"
そしてcargo build
を実行します。
...すると、Cargoは依存関係をインストールします。
このコマンドを実行するとCargo.lock
という新しいファイルを作成されたことが分かります。
このファイルはローカルで使用している依存関係の正確なバージョンのログです。
この依存関係を使うには、main.rs
を開き、そこにあるものをすべて削除し(別の例に過ぎません)、次の行を追加します。
use ferris_says::say;
この行はferris-says
から出力されるsay
関数を利用できるようになったことを意味します。
小さいなRustアプリケーション
さぁ、新しい依存で小さなアプリケーションを書きましょう。
main.rs
には、次のコードを追加します。
use ferris_says::say; // from the previous step use std::io::{stdout, BufWriter}; fn main() { let stdout = stdout(); let out = b"Hello fellow Rustaceans!"; let width = 24; let mut writer = BufWriter::new(stdout.lock()); say(out, width, &mut writer).unwrap(); }
これを保存して、cargo run
でアプリケーションを実行できます。
全てうまくいった場合、以下の画面が表示されます。
---------------------------- | Hello fellow Rustaceans! | ---------------------------- \ \ _~^~^~_ \) / o o \ (/ '_ - _' / '-----' \
もっと学びたい!
さぁ、もうあなたは今からRustacean(ラスタシアン)です!
あなたを歓迎します!
準備ができたなら、学習ページをやってみてください。
学習ページでは、多くの本を見つけることができ、Rustアドベンチャーを続ける手助けになります。
Ferrisと呼ばれるこの蟹は何?
FerrisはRustコミュニティの非公式キャラクタです。多くのRustプログラマーは自分自身を「Rustaceans」と言うのですが、これは「crustacean(甲殻類)」を文字ったものです。私たちはフェリスを性別の代名詞ではなく代名詞「彼ら」、「彼ら」などと呼びます。
Ferris is a name playing off of the adjective, “ferrous,” meaning of or pertaining to iron. Since Rust often forms on iron, it seemed like a fun origin for our mascot’s name!
(意訳できず。)
Ferrisの画像は「http://rustacean.net/」で見つけられます。