20

ruby 1.9.2のlinecache19(ruby-debug19の依存関係)のインストールに問題があります

これが私の用語の出力です

$ rvm use 1.9.2
Using /home/bogdan/.rvm/gems/ruby-1.9.2-p180
$ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-linux]
$ rvm exec gem install linecache19 --backtrace
gem install linecache19 --backtrace

rvm 1.6.20 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]

ERROR:  Error installing linecache19:
    linecache19 requires Ruby version >= 1.9.2.
ERROR:  Error installing linecache19:
    linecache19 requires Ruby version >= 1.9.2.
Building native extensions.  This could take a while...

最後のコマンドは、^Cで中断されるまで永久にハングします。

それを修正する方法はありますか?

4

8 に答える 8

48

あなたは私と同じ問題を抱えているかもしれません。実行するとbundle install、次のエラーが発生しました。

Installing linecache19 (0.5.12) with native extensions
/Users/joseph/.rvm/rubies/ruby-1.9.2p290/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:552:in `rescue in block in build_extensions':
ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)

/Users/joseph/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb 

http://isitruby19.com/linecache19から、これが機能することがわかりました。

gem install ruby-debug19 -- --with-ruby-include=$rvm_path/src/ruby-1.9.2-p290
于 2011-09-12T02:48:44.980 に答える
2

OS X Lionでrbenvを使用すると、同じ問題が発生しました(linecache19が永久に/無期限にハングします)。解決策は、次のようにOpenSSLオプションを使用してRubyをインストールすることであることがわかりました。

rbenv install 1.9.2-p290 --with-openssl-dir=/usr/local
reben rehash
rbenv global 1.9.2-p290

これで、これを実行でき、正常にインストールされます。

gem install ruby-debug19

それが誰かを助けることを願っています。adrpacの要点への帽子のヒント。

于 2011-11-06T13:08:47.587 に答える
1

rvm execインストールされているRubyのすべてのバージョンで指定されたコマンドを実行しようとします。1.9.2以外のバージョン(システムデフォルトを含む)がインストールされていますか?もしそうなら、失敗しているのはこのバージョンである可能性があります。

の場合rvm use 1.9.2、Ruby 1.9.2のコンテキストでコマンドを実行するために特別なことをする必要はありません。RVMは、実行時に環境をセットアップしますuse。を実行するだけですgem install linecache19 --backtrace

于 2011-07-25T06:31:18.117 に答える
1

あなたもの線に沿って何かをすることができます

rvm 1.9.2@global exec 'gem install linecache19 -- --with-ruby-include="${rvm_path}/src/${rvm_env_string//@*}"'

次に、このようなことを実行して、すべての1.9.2ルビーに対してインストールを適用できます。

for ver in $(ls $rvm_path/rubies | grep 1.9.2 | sed s/ruby-//g | sed s/\\///g); do rvm $ver@global exec 'gem install linecache19 -- --with-ruby-include="${rvm_path}/src/${rvm_env_string//@*}"'

このコマンドは、$(ls ..)コマンドから返された各1.9.2ルビーをウォークスルーし、rvmコマンドをそれぞれに適用します。

于 2011-09-13T22:20:47.627 に答える
1

これは私のために働いた

rvm @global gem install ruby-debug19 -- --with-ruby-include=$rvm_path/src/$(rvm tools strings)
于 2012-01-07T05:58:54.000 に答える
0

私のために働いたのは、execを使用してで実行gemされていました:rvm

'sudo rvm exec gem install ruby-debug19'
'sudo rvm exec gem install linecache19'
于 2012-03-31T22:35:01.250 に答える
0

コメントしてみてください

 #gem 'ruby-debug19', :require => 'ruby-debug'

次に、バンドルインストールします。

于 2011-12-03T22:08:42.027 に答える
0

rvmの下でrubyファイルのソースを指定することは私のために働いた

gem install linecache19  -- --with-ruby-include=$rvm_path/src/ruby-1.9.2-head/
于 2012-11-23T02:59:25.420 に答える