rbenvでrubyを追加しようとしたら Peer reports incompatible or unsupported protocol version.
2017-07-05 | カテゴリ >> Ruby

vagrant box で適当に入れたcentos7にrbnev経由でruby が入らなくてハマりました。
結果的にcurlのバージョンを上げたら治った~

rbenvを使ってruby 2.4.1 を入れようとしたら突然の

$ rbenv install -v 2.4.1
/tmp/ruby-build.20170508092853.3405 ~
Downloading ruby-2.4.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.1.tar.bz2
curl: (35) Peer reports incompatible or unsupported protocol version.
error: failed to download ruby-2.4.1.tar.bz2

BUILD FAILED (CentOS Linux 7 using ruby-build 20170405-4-g365dd1f)

なんか、そもそもcurlで

curl https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.1.tar.bz2
curl: (35) Peer reports incompatible or unsupported protocol version.

って怒られる。
curlのバージョンが古くてダメな予感

curl --version
curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.21 Basic ECC zlib/1.2.7 libidn/1.28 libssh2/1.4.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp

ていうわけで、バージョンアップ
ソースから最新を入れてしまうことに
https://curl.haxx.se/download/から拾ってきます。

–enable-libcurl-optionをつけるといいって、Qiitaの秀逸な記事に書いてあった!
http://qiita.com/maangie/items/4af8b813ed9ddce4a0db

$ cd /usr/local/src/
$ wget https://curl.haxx.se/download/curl-7.52.0.tar.gz
$ tar vxzf curl-7.52.0.tar.gz
$ cd curl-7.52.0
$ ./configure --enable-libcurl-option
$ make
$ make install

そういえば今回、yumにまだ古いcurl残ってて、yum removeしようとしたらダメだよ って怒られて消せなかったのですが、(どうなってるのかわからずに)一応バージョンあがりました(←よくない)

$ curl --version
curl 7.52.0 (x86_64-pc-linux-gnu) libcurl/7.52.0 OpenSSL/1.0.1e zlib/1.2.7
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: IPv6 Largefile NTLM NTLM_WB SSL libz UnixSockets HTTPS-proxy

気を取り直して改めて $ rbenv install -v 2.4.1 を実行したところ、今度は通ってくれました。
よかった!

おわり

 

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn
2017-07-05 | カテゴリ >> Ruby 

関連記事

Comment





Comment



*