Homeberw で not a valid keg の Error が出たときは、当該パスが空かどうかを見てみる
Homebrew で libffi をインストールしようとしたところ
Error: /usr/local/opt/libffi is not a valid keg
というエラーメッセージが出てしまいました。
Homebrew での用語としての Keg は「Formula のインストール先パス」とのこと(参考)らしいです。
この Keg が指している先に Formula の内容へのシンボリックリンクが置かれるらしい(参考)。そこで当該パスを覗いてみたところ、なぜか(普通の)ディレクトリが配置されていたため、こちらを退避して /usr/local/opt/libffi には何もないようにしてからもう一度インストール(brew install libffi
)したところ、無事に成功しました。
ということで、/hoge/foo is not a valid Keg
というエラーが出たときは、/hoge/foo
が空かどうかを確かめてみると良いと思います。
参考
- 【Mac】Homebrewとは? - からのFormula、keg、Cellar、Tapってなに? - tweeeetyのぶろぐ的めも
- Not a Valid Keg Error · Issue #37160 · Homebrew/legacy-homebrew · GitHub
- Failure to install git because of some environment problem · Issue #37250 · Homebrew/legacy-homebrew · GitHub
- Problem installing git on yosemite · Issue #37150 · Homebrew/legacy-homebrew · GitHub