MacにRustを入れる 〜 パスPATHを通して、HelloWorld!ファイルをコンパイルして実行するまで一気通貫にまとめてみた


##MacBookProに、Rust言語を入れる方法です。
####インストールをした後、*bash_profile*にパスを通すところまで、手順を示します。

多くの「Rustを入れてみた」系の記事では、パスを通すところまで、記載していないもの多いようです。__本記事では、パスを通すところまで書きました。__

###*curl*コマンドを使って、Rustをインストール
```bash:Terminal
ocean@AfoguardMacBook-Pro Desktop % curl https://sh.rustup.rs -sSf | sh
info: downloading installer

（　途中を省略 ・・・　）

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
ocean@AfoguardMacBook-Pro Desktop % rustc --version
```

####パスを通す前は、Terminalで認識されない

```bash:Terminal
ocean@AfoguardMacBook-Pro Desktop % rustc --version
zsh: command not found: rustc
ocean@AfoguardMacBook-Pro Desktop %
```
####パスを通す

*export*コマンドについては、以下を参照。
・[@IT 「Linux基本コマンドTips（174）：【 export 】コマンド――環境変数やシェル変数を設定する」](https://www.atmarkit.co.jp/ait/articles/1801/12/news015.html)

*bash_prifile*と*bashrc*については、以下を参照。
・ [@@takutokiさん 「.bash_profileと.bashrcのまとめ」](https://qiita.com/takutoki/items/021b804b9957fe65e093)

```bash:Terminal
ocean@AfoguardMacBook-Pro Desktop % export PATH="$HOME/.cargo/bin:$PATH"
ocean@AfoguardMacBook-Pro Desktop % echo $HOME
/Users/ocean
ocean@AfoguardMacBook-Pro Desktop % echo $PATH
/Users/ocean/.cargo/bin:/Users/ocean/.pyenv/shims:/Users/ocean/.pyenv/bin:/Users/ocean/.nodebrew/current/bin:/Users/ocean/.nodebrew/current/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin
ocean@AfoguardMacBook-Pro Desktop % export PATH="$HOME/.cargo/bin:$PATH" >> .bash_profile
ocean@AfoguardMacBook-Pro Desktop % 
```

####Terminalから認識される

*rustc*は、Rustで書かれたスクリプトファイルを機械語にコンパイルするコンパイラです。

```bash:Terminal
ocean@AfoguardMacBook-Pro Desktop % rustc --version                                    
rustc 1.48.0 (7eac88abb 2020-11-16)
ocean@AfoguardMacBook-Pro Desktop %
```

*rustup*の使い所については、以下にまとまっています。
・ [rustup で Rust コンパイラーを簡単インストール](https://zenn.dev/chikoski/articles/2115efed69aed014616f)

```bash:Terminal
ocean@AfoguardMacBook-Pro Desktop % rustup --version
rustup 1.23.1 (3df2264a9 2020-11-30)
info: This is the version for the rustup toolchain manager, not the compiler.
info: The currently active `rustc` version is `rustc 1.48.0 (7eac88abb 2020-11-16)`
ocean@AfoguardMacBook-Pro Desktop %
```

*cargo*の使い所については、以下にまとまっています。
・ [The Rust Programming Language 日本語版 「Hello, Cargo!」](https://doc.rust-jp.rs/book-ja/ch01-03-hello-cargo.html)

```bash:Terminal
ocean@AfoguardMacBook-Pro Desktop % cargo --version
cargo 1.48.0 (65cbdd2dc 2020-10-14)
ocean@AfoguardMacBook-Pro Desktop %
```

####任意のディレクトリで、Rustが認識されるかどうか確認
__（結果はOK)__

```bash:Terminal 
ocean@AfoguardMacBook-Pro Desktop % mkdier rust_test
zsh: command not found: mkdier
ocean@AfoguardMacBook-Pro Desktop % mkdir rust_test 
ocean@AfoguardMacBook-Pro Desktop % cd rust_test 
ocean@AfoguardMacBook-Pro rust_test % rustc --version                                      
rustc 1.48.0 (7eac88abb 2020-11-16)
ocean@AfoguardMacBook-Pro rust_test %rustup 1.23.1 (3df2264a9 2020-11-30)
info: This is the version for the rustup toolchain manager, not the compiler.
info: The currently active `rustc` version is `rustc 1.48.0 (7eac88abb 2020-11-16)`
```

####*Hello World!*の産声を標準出力に発するサンプルスクリプトファイルを作成
```bash:Terminal 
ocean@AfoguardMacBook-Pro rust_test % vi hello.rs
ocean@AfoguardMacBook-Pro rust_test % cat hello.rs 
fn main() {
	println!("Hello World!");
}
ocean@AfoguardMacBook-Pro rust_test % 
```

####スクリプトファイルをコンパイル
```bash:Terminal 
ocean@AfoguardMacBook-Pro rust_test % rustc hello.rs
ocean@AfoguardMacBook-Pro rust_test % ls
hello		hello.rs
ocean@AfoguardMacBook-Pro rust_test %
```

####コンパイルした実行ファイルを実行
__（実行成功)__

```bash:Terminal 
ocean@AfoguardMacBook-Pro rust_test % ./hello
Hello World!
ocean@AfoguardMacBook-Pro rust_test %
```
###（ 参考にしたウェブページ ）

・ [@tktktktkさん 2019年06月21日 「【Rust】MacにRustをインストールして動作確認をするまで 」](https://qiita.com/tktktktk/items/ebe7bfec725d1c674d18)
・ [@ledsunさん 2017年01月31日 「Rustをインストール - macOS & fish-shellの場合」](https://qiita.com/ledsun/items/9af5cb594b4f9b6c5523)
・ [@ozipiさん 2020年05月25日に更新 「PATHを通すの意味と通し方　.bash_profile」](https://qiita.com/ozipi/items/29d7ae0b21e476dd7b8e)