古い32bitパソコン(LinuxMint OS)にもshopify-cliインストールできるかなと思って確認したら、最新バージョンで2.5.xでした。
shopify-cliのインストール要件がruby2.7以上なので、なんとかアップグレードしたいところ。
調べてみると、githubから直接ひっぱればaptより最新バージョンがインストールできそうだったので早速試します。
現行rubyの削除とgitの確認
あとで衝突すると面倒なので、とりあえず元々入っていたruby( apt install したruby)を消します。
# apt purge ruby
次にgitがインストールされているか確認します。このあとgit cloneでrbenv ruby-buildをインストールするので、gitが無ければインストールしておきます。
$ git --version
// インストール済なら、git version 2.25.1 のように表示
// なければ #apt install git
rbenvとruby-buildのインストール
rubyバージョン管理ツールのrbenvと、rbenvのプラグインであるruby-buildをインストールします。
$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
$ cd ~/.rbenv && src/configure && make -C src
rbenv –version でバージョン確認できたらOKです。
rbenvがインストールできたらpluginsディレクトリを作ってruby-buildもインストールしておきます。
$ cd ~/.rbenv/
$ mkdir plugins
$ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
rbenvにPATHを通す
rbenvでrubyを実行するためにPATHを通します。ここ間違ってるとrubyが使用できませんので、のちのちrubyが利用できないときは記述が間違ってないかチェック。
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
$ source ~/.bashrc
Rubyインストール
rbenvとruby-buildが揃ったのでrubyをインストールします。
まずはrenvでインストール可能な最新パッケージを確認。
$ rbenv install --list
直近の3バージョンぐらいが表示されます。今回は2.7.5をインストール。ちなみに10分ぐらいかかります。休憩しておいてください。
$ rbenv install 2.7.5
コンパイルエラー
休憩から戻るとよもやのエラー。
BUILD FAILED (Linuxmint 20.2 using ruby-build 20211203)
.... was not compiled.
.... was not compiled.
Try running `apt-get install -y libssl-dev zlib1g-dev` to fetch missing dependencies.
素直に指示に従います。
# apt install -y libssl-dev zlib1g-dev
待っている間にzliblgを調べてみると、「zlib は gzip と PKZIP で使われている deflate 圧縮法を実装したライブラリ です。このパッケージは開発をサポートするファイルが含まれています。」だそうです。(引用元:https://packages.debian.org/ja/sid/zlib1g-dev)
完了したら再挑戦 -> rubyインストール完了。
globalに設定しておきます。
$ rbenv global 2.7.5
最後に、rubyのバージョン確認できれば終了です。
$ ruby -v
// ruby 2.7.5