Techioz Blog

「ロードするファイルはありません – net/https」 - Heroku、Ruby、Ubuntu 10.04

概要

この問題が他のブログや stackoverflow スレッドに投稿されているのを見てきましたが、誰も答えを持っていないようです。 Heroku を実行しようとすると、次のエラーが発生します。

/usr/local/heroku/vendor/gems/rest-client-1.6.1/lib/restclient.rb:9:in `rescue in <top (required)>': no such file to load -- net/https. Try running apt-get install libopenssl-ruby (LoadError)
from /usr/local/heroku/vendor/gems/rest-client-1.6.1/lib/restclient.rb:5:in `<top (required)>'
from /usr/local/heroku/vendor/gems/rest-client-1.6.1/lib/rest_client.rb:2:in `require'
from /usr/local/heroku/vendor/gems/rest-client-1.6.1/lib/rest_client.rb:2:in `<top (required)>'
from /usr/local/heroku/lib/heroku/client.rb:2:in `require'
from /usr/local/heroku/lib/heroku/client.rb:2:in `<top (required)>'
from /usr/local/heroku/lib/heroku.rb:3:in `require'
from /usr/local/heroku/lib/heroku.rb:3:in `<top (required)>'
from /usr/local/heroku/lib/heroku/cli.rb:1:in `require'
from /usr/local/heroku/lib/heroku/cli.rb:1:in `<top (required)>'
from /usr/bin/heroku:29:in `require'
from /usr/bin/heroku:29:in `<main>'

問題は、libopenssl-ruby がすでに最新バージョンであることです。

他にこの問題に遭遇した人はいますか?

解決策

ubuntu 10.04でも同様の問題が発生したので、次のように修正しました。

編集:

より迅速な修正: /usr/local/heroku/bin/heroku が使用している Ruby のバージョンを確認してください 私が持っていたのは:

#!/usr/bin/env ruby1.9.1

次に、適切なライブラリをインストールします。

$ sudo apt-get install libopenssl-ruby1.9.1

古い:

RVM をインストールします: http://beginrescueend.com/rvm/install/

~/.bashrc に以下を追加します。

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" 

走る:

$ source ~/.bachrc

それから:

$ rvm remove 1.9.2
$ rvm pkg install openssl
$ rvm install 1.9.2 -C --with-openssl-dir=$HOME/.rvm/usr

最後のコマンドを実行した後、次の出力が表示されました。ruby-1.9.2-p290 に注目してください。

Installing Ruby from source to: /my/home/dir/.rvm/rubies/ruby-1.9.2-p290, this may take a while depending on your cpu(s)

/usr/local/heroku/bin/heroku を編集します 最初の行を次のように変更します。

#!/usr/bin/env ruby1.9.1

に:

#!/usr/bin/env ruby-1.9.2-p290 

これらすべてが機能するには、不足しているライブラリをいくつかインストールする必要がある場合があります。これは、何を見つけるのに役立ちます。

$ rvm notes

これがお役に立てば幸いです。