在Ruby 1.9.3中安装debugger-linecache时出错

时间:2012-06-06 14:55:35

标签: ruby rubygems gem ruby-1.9.3

我需要debugger-linecache版本1.0.1用于项目,并且在尝试安装时遇到以下错误。

trunk ☺  gem install debugger-linecache -v '1.0.1'
Building native extensions.  This could take a while...
ERROR:  Error installing debugger-linecache:
    ERROR: Failed to build gem native extension.

        /Users/jordanscales/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb
checking for vm_core.h... no
checking for vm_core.h... no
Makefile creation failed
**************************************************************************
No source for ruby-1.9.3-p194 provided with debugger-ruby_core_source gem.
**************************************************************************
*** 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
    --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=/Users/jordanscales/.rvm/rubies/ruby-1.9.3-p194/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}/lib


Gem files will remain installed in /Users/jordanscales/.rvm/gems/ruby-1.9.3-p194/gems/debugger-linecache-1.0.1 for inspection.
Results logged to /Users/jordanscales/.rvm/gems/ruby-1.9.3-p194/gems/debugger-linecache-1.0.1/ext/trace_nums/gem_make.out
trunk ☺  

任何帮助都会非常感激,我一直在寻找但找不到合适的解决方案。

10 个答案:

答案 0 :(得分:127)

这可能对你有帮助,对我有用

gem install debugger-linecache -v '1.1.2' -- --with-ruby-include=$rvm_path/src/ruby-1.9.3-p286/

答案 1 :(得分:100)

此错误表示所选版本的debugger不支持您当前的Ruby版本。有两种解决方案:

  1. 通过debugger更新bundle update debugger gem。新版本的debugger向后兼容旧的Ruby版本,因此这是修复它的最佳方法。
  2. 降级您的Ruby版本。

答案 2 :(得分:34)

更新/安装gem debugger-ruby_core_source

gem install debugger-ruby_core_source

此处已更正:https://github.com/cldwalker/debugger-ruby_core_source/pull/7

答案 3 :(得分:5)

问题是我错误地使用了gemsets。我知道没有权限是一个问题,因为在RVM下我不需要sudo来安装任何东西。

rvm gemset use global然后bundle install就可以了。

答案 4 :(得分:4)

从以下链接:

https://github.com/cldwalker/debugger/issues/50

我已经安装了gem ruby​​-debug19 ,问题解决了我,如下所示:

$ bundle
... -> failed to build debugger-linecache
$ gem install ruby-debug19
$ bundle
... -> all is fine

答案 5 :(得分:3)

在我的情况下,问题直接与debugger-linecache无关。尝试升级debugger-ruby_core_source或将Ruby降级几个补丁级别。

我执行了bundle update debugger-linecache。虽然我在Gemfile.lock中有最新版本,但debugger-ruby_core_source已升级到1.1.5并且调试器-linecache已停止抱怨。

答案 6 :(得分:2)

我安装了debugger-ruby_core_source gem,基于在这里仔细阅读旧答案:https://github.com/cldwalker/debugger/issues/12

答案 7 :(得分:1)

如果你正在使用rvm,那么确保路径导致ruby,在rvm中它的rubies文件夹

<强> $ rvm_path /红宝石/红宝石1.9.3-P448

gem install debugger-linecache -v '1.1.2'  -- --with-ruby-include=$rvm_path/rubies/ruby-1.9.3-p448

答案 8 :(得分:1)

您的Gemfile.lock不是使用您尝试捆绑的相同Ruby编写的。

bundle update应该让Bundler看看不同的版本。

答案 9 :(得分:0)

手动构建它。这个对我有用 https://gist.github.com/4060260