rbenv安装ruby校验和不匹配osx

Cam*_*Cam 5 ruby macos curl rbenv

我已经成功地在山狮上安装了rbenv和ruby.跑步rbenv install 1.9.3-p392以:

checksum mismatch: ruby-1.9.3-p392.tar.gz (file is corrupt) expected f689a7b61379f83cbbed3c7077d83859, got 1cfc2ff433dbe80f8ff1a9dba2fd5636

它正在下载的文件似乎很好,如果我使用curl手动下载文件,我会得到相同的错误校验和.

以前有人遇到过这个吗?他们是如何解决的?

Cam*_*Cam 9

TL:博士; 使用您的浏览器从http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz下载ruby 并将其放入~/.rbenv/caches/ruby-1.9.3-p392.tar.gz,然后运行rbenv install 1.9.3-p392

问题在于curlftp.ruby-lang.org服务器有关.因为curl没有通过Accept-Encoding: gzip,所以服务器提供ruby的非gzip版本(~60mb)而不是压缩版本(~12mb).这会导致校验和失败,并且构建停止.

使用curl --header"Accept-Encoding:gzip"下载文件,给出正确的校验和.但是,最新版本的rbenv将-q标志传递给curl,它会忽略.curlrc文件,这使得在不编辑源代码的情况下很难配置.

简单的解决方案是手动下载ruby.tar.gz并将其放在缓存文件夹中,完全跳过问题.

  • 谢谢.看起来缓存目录现在是`〜/ .rbenv/cache`**最后没有结果**. (5认同)