使用Homebrew安装旧版本的ImageMagick

6
我需要安装一个较旧的版本的imagemagick(6.5.9-3),我可以在可用版本列表中看到它。
> brew versions
6.6.1-5  git checkout 1c9f04e Library/Formula/imagemagick.rb
6.5.9-8  git checkout 685dbff Library/Formula/imagemagick.rb
6.5.9-3  git checkout 258720c Library/Formula/imagemagick.rb
6.5.6-5  git checkout 7c90d02 Library/Formula/imagemagick.rb
6.5.5-10 git checkout b01c13d Library/Formula/imagemagick.rb

但是当我使用checkout命令检出那个版本时,
> git checkout 258720c Library/Formula/imagemagick.rb

然后运行

> brew install imagemagick

我收到一个错误提示,说

Error: imagemagick is a head-only formula
Install with `brew install --HEAD imagemagick

为什么brew会列出那些版本但无法安装它们呢?因此问题仍然存在,如何使用brew安装旧版本的imagemagick呢?
(这个解决方案已经不再可行:无法通过Homebrew安装旧版本的ImageMagick
非常感谢您的帮助。
2个回答

2

你可以在GitHub Gist中定义自己的Homebrew公式,并使用以下命令进行安装

brew install path/to/your/GistToYourPersonalImageMagickFormula

例如这里这里


抱歉给你点了踩,但这种方法既像是一个安全问题,又非常笨拙。我知道这是Homebrew开发人员在Boneyard停用后建议的方法,但应该有其他更好的处理方式。 - vhs

1
如果是为了兼容Ruby 1.8.6,或者任何6.5.9-x版本,都可以使用提供的ImageMagick 6.5.9.x公式,称为homebrew-versions tap中的imagemagick-ruby186。这将是最简单的方法,并且将受到未来更新的支持。
brew tap homebrew/versions
brew install imagemagick-ruby186

那些6.5.9.x版本的原始imagemagick公式太旧了,可能与当前的brew ruby脚本存在兼容性问题。(它们目前会出现“Formulae require at least a URL”的错误; 你的错误可能是类似的问题。) 要安装它们,您可能需要将整个repo回滚到构建之前的那个时间点,使用git checkout,而不仅仅是一个文件。

您链接的另一个答案也会因为同样的原因失败 - 它是通过网络获取旧版本的imagemagick.rb公式的另一种机制,而不是通过git,因此它将具有相同的兼容性问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接