かみぽわーる

kamipo's blog

rbenvで入れたRubyで no such file to load -- net/https いわれるとき

VPSのUbuntuにrbenvでRuby入れていろいろしようと思ったら

 no such file to load -- net/https. Try running apt-get install libopenssl-ruby (LoadError)

rest-client/lib/restclient.rb at master · rest-client/rest-client · GitHub

っていわれたけど、apt-get install libopenssl-rubyしてもrbenvで入れたRubyでopenssl使えるようにならないのでこれではダメです!

とりあえず、なにが足りないのか調べるために

cd ruby-1.9.3-p125/ext/openssl
ruby extconf.rb

してみたら

=== OpenSSL for Ruby configurator ===
=== Checking for system dependent stuff... ===
checking for t_open() in -lnsl... no
checking for socket() in -lsocket... no
checking for assert.h... yes
=== Checking for required stuff... ===
checking for openssl/ssl.h... no
=== Checking for required stuff failed. ===
Makefile wasn't created. Fix the errors above.

openssl/ssl.hが足りないっぽいんで

apt-file search openssl/ssl.h

すると

libssl-dev: /usr/include/openssl/ssl.h

openssl/ssl.hはlibssl-devパッケージに含まれてることがわかるので

sudo aptitude install libssl-dev

したらいけるようになると思います!僕はいけるようになりました!

あとはopensslだけ入れなおすなりRubyごと入れなおすなりするとよいです。