在ruby 2.0.0p247上替换’ruby-debug19’(罪魁祸首’linecache19’)?

我很沮丧因为我在这个问题上尝试了其他StackOverflow文章,但是修复我自己的错误却没有成功。 我打电话的时候

'gem install linecache19' 

…以下错误被输出

 ERROR: Error installing linecache19: ERROR: Failed to build gem native extension. /home/user/.rvm/rubies/ruby-2.0.0-p247/bin/ruby extconf.rb checking for vm_core.h... no /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb:39:in `create_makefile_with_core': Use RbConfig instead of obsolete and deprecated Config. /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb:39:in `create_makefile_with_core': Use RbConfig instead of obsolete and deprecated Config. checking for vm_core.h... no *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options. Provided configuration options: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --srcdir=. --curdir --ruby=/home/user/.rvm/rubies/ruby-2.0.0-p247/bin/ruby --with-ruby-dir --without-ruby-dir --with-ruby-include --without-ruby-include=${ruby-dir}/include --with-ruby-lib --without-ruby-lib=${ruby-dir}/ /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:268:in `block (2 levels) in read': Looking for http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-2.0.0-p247.tar.gz and all I got was a 404! (URI::NotFoundError) from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http.rb:1413:in `block (2 levels) in transport_request' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http/response.rb:162:in `reading_body' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http.rb:1412:in `block in transport_request' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http.rb:1403:in `catch' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http.rb:1403:in `transport_request' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http.rb:1376:in `request' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http.rb:1369:in `block in request' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http.rb:852:in `start' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/net/http.rb:1367:in `request' from /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:239:in `block in read' from /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:286:in `connect' from /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:234:in `read' from /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:128:in `download' from /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb:55:in `block in create_makefile_with_core' from /home/user/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/tempfile.rb:324:in `open' from /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb:51:in `create_makefile_with_core' from extconf.rb:19:in `' Requesting http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-2.0.0-p247.tar.gz Gem files will remain installed in /home/user/.rvm/gems/ruby-2.0.0-p247/gems/linecache19-0.5.12 for inspection. Results logged to /home/user/.rvm/gems/ruby-2.0.0-p247/gems/linecache19-0.5.12/ext/trace_nums/gem_make.out 

请注意罪魁祸首……

 /home/user/.rvm/gems/ruby-2.0.0-p247/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:268:in `block (2 levels) in read': Looking for http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-2.0.0-p247.tar.gz and all I got was a 404! (URI::NotFoundError) 

显然这不起作用…urlhttp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-2.0.0-p247.tar.gz没有意义。 (访问Ruby1.9然后查找Ruby2.0 tar.gz)

这是一个类项目(对于CS169:加州大学伯克利分校的软件工程),需要gem’ruby-debug19’,它试图安装’linecache19’。

我是否必须降级为ruby1.9,还是可以继续使用ruby2.0?

我打电话的时候

 $ruby -v 

我得到以下……

 ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux] 

我正在使用RVM。

我有点怀疑linecache19不支持ruby 2.0。

尝试安装byebug而不是Ruby 2.0的调试器。 您似乎已经拥有Ruby的最小可支持补丁级别。

Ruby 2.0不支持调试器和linecache。 您可以使用byebug gem代替。

试着这样做:

gem install linecache19 -- --with-ruby-include=$rvm_path/src/ruby-2.0.0-p247

在你的gem文件中添加它

  gem 'debugger' 

并给

  bundle install 

你只需要替换url中的代码

/home/{your-user-name]/.rvm/gems/ruby-2.0.0-p645/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb

从1.9到2.0