Today 'tunepolo' Leaned

古いバージョンのモジュールをインストールする

PHPやnodeなどの言語を切り替えて使う際、opensslやicu4cなど動的にリンクされるモジュールのバージョンが変わってしまい動かなくなることがある。

HomebrewのCellarにあれば古いバージョンに切り替えることで動く状態に戻せるが、古いバージョンが削除されて手元になく、Homebrewで新規インストールができないこともある。 このようなときは過去バージョンを指定してインストールできる。

$ brew reinstall https://raw.githubusercontent.com/Homebrew/homebrew-core/{ハッシュ番号をここに書く}/Formula/{対象モジュール}.rb

icu4cの64.2をインストールする場合は下記のようになる。

  1. 対象モジュールのFormulaを確認する。Homebrew Formulaeの"Formula code"から見つけることができる。
  2. 該当ファイルのgit logを確認し、インストールしたいバージョンのハッシュ番号を確認する。
    • git log master -- Formula/icu4c.rbで確認可能
    • 64.2の場合は’a806a621ed3722fb580a58000fb274a2f2d86a6d’となる。
  3. 上記情報を当てはめ、再インストールコマンドを実行する
$ brew reinstall https://raw.githubusercontent.com/Homebrew/homebrew-core/{a806a621ed3722fb580a58000fb274a2f2d86a6d}/Formula/icu4c.rb
Last updated on 8 May 2020
Edit on GitHub