发现原来 homebrew 还能这么玩,记录下。
问题描述:
项目中用到了gem linkparser, 安装该gem前,要求安装 link-grammar。
常规思路就是 homebrew。
Mac本地安装link-grammar, 使用brew:
brew install link-grammar
安装了最新版本的link-grammar , 5.8.0.
bundle install
时,依然报错,查看 linkparser 已经多年未更新,大概率是 link-grammar 版本太新导致。
brew search link-grammar
Formulae 只有最新的,没有其他版本。
只能换个思路,手动编译安装下。
去官网查看link-grammar的所有历史版本, 选择安装5.6.2,下载了source code, 按照link-grammar中给出的操作步骤进行安装,编译时,出现了各种莫名其妙的坑。
解决方法:
卡了几个小时后,还是求助头头,他给到的解决方法依然是homebrew, 速度地解决了问题。
具体如下:
去homebrew core 的 github 主页,搜索 link-grammar。
找到后,点击history:
显示 commit history 太长,建议去本地执行 git log 查看历史记录。
在本地,切换到 homebrew-core 目录下:
cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
执行:
git log 947ad05b46800d3c4d000881dc0240978720add4 -- Formula/link-grammar.rb
会有点慢,稍等下,会看到历史的commit:
把对应的commit copy 下来,替换link-grammar最新commit的id,看到了 5.6.2版本。
点击 Raw, 拿到 URL,本地终端执行:
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/947ad05b46800d3c4d000881dc02409s78720add4/Formula/link-grammar.rb
OK, 安装完成。
执行 bundle install
, Bingo!