本記事ではRaspberry Pi 4にRustをインストールする方法を解説しています.
通常の手順でインストールを実施するとうまくいかなかったケースも記載しているので,参考にしてください.
環境
- ラズパイのモデル: Raspberry Pi 4 Model B Rev 1.5
- Macからsshで接続して操作
確認コマンド
cat /proc/cpuinfo | grep Model
インストール手順
Rustの公式サイトにある以下のコマンドをターミナルで実行.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
上記を実行すると以下のような出力が出てくるので,2
を入力してreturnを押す.
1) Proceed with installation (default) 2) Customize installation 3) Cancel installation >2
カスタマイズ項目について複数確認されるため,以下のように対応
- Default host triple? [aarch64-unknown-linux-gnu]
armv7-unknown-linux-gnueabihf
を入力してreturn
- Default toolchain? (stable/beta/nightly/none) [stable]
- 何も入力せずreturn
- Profile (which tools and data to install)? (minimal/default/complete) [default]
- 何も入力せずreturn
- Modify PATH variable? (Y/n)
n
を入力してreturn
オプションが以下のように切り替わるので1
を押してreturn
(前の手順で変更した内容でインストールが実行される)
Current installation options: default host triple: armv7-unknown-linux-gnueabihf default toolchain: stable profile: default modify PATH variable: no 1) Proceed with installation (default) 2) Customize installation 3) Cancel installation >1
Rust is installed now. Great! To get started you need Cargo's bin directory ($HOME/.cargo/bin) in your PATH environment variable. This has not been done automatically. To configure your current shell, run: source "$HOME/.cargo/env"
インストールが完了したら以下のコマンドでPATHを通す.
# viで.bash_profileを開く
sudo vi ~/.bash_profile
# 以下をファイルの最後に追記
export PATH="$HOME/.cargo/bin:$PATH"
以下のコマンドで変更を反映
source ~/.bash_profile
インストールの確認として以下のコマンドで結果が出力されることを確認します.
rustup -V
cargo -V
rustc -V
rustup -V
rustup 1.26.0 (5af9b9484 2023-04-05) info: This is the version for the rustup toolchain manager, not the rustc compiler. info: The currently active `rustc` version is `rustc 1.71.0 (8ede3aae2 2023-07-12)`
cargo -V
cargo 1.71.0 (cfd3bbd8f 2023-06-08)
rustc -V
rustc 1.71.0 (8ede3aae2 2023-07-12)
無事にインストールできました!
参考:インストールできなかった例
※ こちらでは参考までにインストールに苦戦した状況を書いています.
Rustの公式サイトにある以下のコマンドをターミナルで実行.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
上記を実行すると以下のような出力が出てくるので1
を入力してreturnを押す.
1) Proceed with installation (default) 2) Customize installation 3) Cancel installation >1
すると,以下のような権限エラーが出た.
error: could not amend shell profile: '/home/XXX/.bash_profile': could not write rcfile file: '/home/XXX/.bash_profile': Permission denied (os error 13)
上記のような権限エラーが出たため後続のコマンドにsudo
をつけて再度実行し,前述と同様にデフォルトでインストールを進める.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sudo sh
Rust is installed now. Great! To get started you may need to restart your current shell. This would reload your PATH environment variable to include Cargo's bin directory ($HOME/.cargo/bin). To configure your current shell, run: source "$HOME/.cargo/env"
成功した様子なので出力の指示に従い以下のコマンドでPATHを通す.
source "$HOME/.cargo/env"
インストールの確認として,以下のコマンドが実行できるか確認.
rustup -V
cargo -V
rustc -V
まずはrustup
コマンドを確認.
rustup -V
rustup 1.26.0 (5af9b9484 2023-04-05) info: This is the version for the rustup toolchain manager, not the rustc compiler.
rustup
は問題なさそうなので,他のコマンドも確認する.
cargo -V
error: rustup could not choose a version of cargo to run, because one wasn't specified explicitly, and no default is configured. help: run 'rustup default stable' to download the latest stable release of Rust and set it as your default toolchain.
エラーが出ており,ヘルプとして安定版を勧められているので以下のコマンドを実行して様子を確認.
(実行するとインストールが始まって,色々と更新されている様子)
rustup default stable
インストールが終わったので,再度cargo
コマンドを実行して確認.
cargo -V
error: command failed: 'cargo': No such file or directory (os error 2)
あれ?
PATHは通っているし,PATHで指定している~/.cargo/bin
配下にもcargo
があるのに,何故か認識されない・・・
rustc
も同様・・・
rustc -V
error: command failed: 'rustc': No such file or directory (os error 2)
本来であれば問題なくインストールできるはずでしたが,上記のような流れでうまくいかず・・・
試行錯誤してインストールできたのが本記事の最初に記載した手順です.
ひとこと
PythonのPoetryをインストールするためにRustが必要だったのですが大きく時間を使ってしまいました.
この記事が同じ現象に悩まれている方の参考になれば幸いです.