パッケージ管理システムでRustをインストール
これまで、主要3プラットフォーム(Windows、macOS、Linux)でRustをインストールする方法やアンインストールする方法およびアップデートする方法を説明した。Rustチームが紹介しているオフィシャルな方法でのインストール/アンインストールおよびアップデートの方法だ。
Rustチームが紹介している方法はRustを個別にインストールする方法で、パッケージ管理システムを使う方法ではない。rustupコマンドを使ってRustだけをインストールする方法だ。
前回は、macOSでHomebrewと呼ばれるパッケージ管理システムを使う方法を取り上げるとともに、Rustをインストールしたりアップデートしたりする方法を取り上げた。当然、Linuxにもパッケージ管理システムは存在しており、パッケージ管理システムを使ってRustをインストールできるようにもなっている。ただし、パッケージ管理システムや管理用に使われるコマンドはLinuxディストリビューションごとに異なっており、それぞれ別のコマンドを実行する必要がある。
ここでは、Ubuntu、Red Hat Enterprise Linux/CentOS、SUSE Linux Enterprise Server/openSUSE Leapにおけるパッケージ管理システムを使ったRustのインストール方法とアンインストール方法を取り上げる。他のLinuxディストリビューションでは異なるコマンドが必要だったり、同じLinuxディストリビューションでもバージョンが古いと操作が異なったりするものもある。最終的には、ここで紹介した方法を参考にしつつ、使用しているLinuxディストリビューションに適した方法で作業してもらえればと思う。
Ubuntuにインストール
Ubuntuでは、aptコマンドでパッケージの操作を行う。UbuntuにはrustcというパッケージにRustコンパイラやCargoが同梱されており、このパッケージをインストールすることで、Rustをインストールできる。インストールやアンインストール方法は次のとおり。
コマンド | 内容 |
---|---|
sudo apt install rustc | Rustインストール |
sudo apt remove rustc; sudo apt autoremove | Rustアンインストール |
sudo apt update; sudo apt upgrade | パッケージアップデート |
aptでは、rustcパッケージのみをアップデートするといったことはできない。rustcパッケージをアップデートするには、Ubuntuのパッケージ全体をアップデートする必要がある。
Red Hat Enterprise Linux / CentOSにインストール
Red Hat Enterprise LinuxやCentOSでは、yumコマンドでパッケージの操作を行う。Red Hat Enterprise LinuxやCentOSでは、rust-toolsetというパッケージをインストールすることでCargoおよびRustコンパイラをインストールできる。インストールやアンインストール方法は次のとおり。
コマンド | 内容 |
---|---|
sudo yum install rust-toolset | Rustインストール |
sudo yum remove rust-toolset | Rustアンインストール |
sudo yum check-update; sudo yum update | パッケージアップデート |
aptではrustcパッケージのみをアップデートするといったことはできない。rust-toolsetパッケージをアップデートするにはRed Hat Enterprise LinuxやCentOSのパッケージ全体をアップデートする必要がある。
SUSE Linux Enterprise Server / openSUSE Leapにインストール
SUSE Linux Enterprise ServerやopenSUSE Leapでは、zypperコマンドでパッケージの操作を行う。SUSE Linux Enterprise ServerやopenSUSE Leapでは、cargoというパッケージをインストールすることでCargoおよびRustコンパイラをインストーできる。インストールやアンインストール方法は次のとおり。
コマンド | 内容 |
---|---|
sudo zypper install cargo | Rustインストール |
sudo zypper remove cargo rust | Rustアンインストール |
sudo zypper refresh; sudo zypper update | パッケージアップデート |
cargoパッケージをアンインストールするだけでは、インストールしたパッケージは削除しきれない。アンインストールするには、rustパッケージもアンインストールする必要がある。rustパッケージは、cargoパッケージをインストールすると依存関係でインストールされるパッケージだ。
さらに、他のパッケージも依存関係的にインストールされたものが残ってしまう。その場合、「sudo zypper packages --orphaned --unneeded」のようにコマンドを実行して取り残されてしまったパッケージを一覧表示させ、不要なパッケージを個別にアンインストールすればよい。
zypperではcargoパッケージのみをアップデートするといったことはできない。cargoパッケージをアップデートするにはSUSE Linux Enterprise ServerやopenSUSE Leapのパッケージ全体をアップデートする必要がある。
Linuxならパッケージ管理システムも選択肢
Linuxディストリビューションを使用するなら、パッケージ管理システムを利用するのは自然な選択肢だ。一度インストールすれば、他のパッケージと同じタイミングでアップデートが行われるので手間が一括で済む。rustupコマンドの操作方法を覚える必要がないので簡単だ。
しかし反面、Linuxディストリビューションのパッケージに登録されているRustはバージョンが古い傾向が見られる。Rustは半年おきに新しいバージョンが公開されているのだが、Linuxディストリビューションでは、古いバージョンのままキープされているものも多い。また、古いバージョンのLinuxディストリビューションではそもそもRustのパッケージが提供されていないこともある。
Linuxディストリビューションにおいて、Rustのインストールやアップデートにパッケージ管理システムを使うか、rustupコマンドを使うかは、まずRustパッケージが提供されているかどうか、次に、最新バージョンを使いたいか古いままでもよいか、その辺りが切り分けのポイントになるといえる。