2012-06-27 7 views
3

Я пытаюсь установить ruby-debug. Я использую Mac OS 10.7.4, XCode версии 2308 и Ruby версии 1.9.3-p194.Не удается установить ruby-debug, ошибка: rb_method_entry_t.called_id

Следуя инструкциям: http://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-ruby-debug, я попытался запустить

sudo gem install ruby-debug 

я получил следующее сообщение об ошибке:

Building native extensions. This could take a while... 
ERROR: Error installing ruby-debug: 
    ERROR: Failed to build gem native extension. 

     /Users/andrew/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb 
checking for rb_method_entry_t.called_id in method.h... no 
checking for rb_control_frame_t.method_id in method.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 
    --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/andrew/.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 
extconf.rb:16:in `block in <main>': break from proc-closure (LocalJumpError) 
from /Users/andrew/.rvm/gems/ruby-1.9.3-p194/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb:18:in `call' 
from /Users/andrew/.rvm/gems/ruby-1.9.3-p194/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb:18:in `create_makefile_with_core' 
from extconf.rb:32:in `<main>' 


Gem files will remain installed in /Users/andrew/.rvm/gems/ruby-1.9.3-p194/gems/ruby-debug-base19-0.11.26 for inspection. 
Results logged to /Users/andrew/.rvm/gems/ruby-1.9.3-p194/gems/ruby-debug-base19-0.11.26/ext/ruby_debug/gem_make.out 

Так что я попытался следующую команду:

sudo gem install debugger 

что привело в:

Fetching: columnize-0.3.6.gem (100%) 
Fetching: debugger-ruby_core_source-1.1.3.gem (100%) 
Fetching: debugger-linecache-1.1.1.gem (100%) 
Building native extensions. This could take a while... 
Fetching: debugger-1.1.4.gem (100%) 
Building native extensions. This could take a while... 
Successfully installed columnize-0.3.6 
Successfully installed debugger-ruby_core_source-1.1.3 
Successfully installed debugger-linecache-1.1.1 
Successfully installed debugger-1.1.4 
4 gems installed 
Installing ri documentation for columnize-0.3.6... 
Installing ri documentation for debugger-ruby_core_source-1.1.3... 
Installing ri documentation for debugger-linecache-1.1.1... 
Couldn't find file to include 'VERSION' from lib/linecache19.rb 
Installing ri documentation for debugger-1.1.4... 
Installing RDoc documentation for columnize-0.3.6... 
Installing RDoc documentation for debugger-ruby_core_source-1.1.3... 
Installing RDoc documentation for debugger-linecache-1.1.1... 
Couldn't find file to include 'VERSION' from lib/linecache19.rb 
Installing RDoc documentation for debugger-1.1.4... 

Так я исследовал этот вопрос и, наконец, наткнулся на этот пост:

how do I install ruby-debug in ruby 1.9.3/Rails 3.2.1

Все работало, пока я не попробовал команду:

gem install ruby-debug-base19-0.11.26.gem -- --with-ruby-include=$SANDBOX/packages/ruby-1.9.3-p194 

Который только воспроизвели первую ошибку, выше. Так что я посмотрел в

rb_method_entry_t.called_id 

И нашел этот пост: https://github.com/ruby/ruby/pull/56/#issuecomment-3463264

Я пытался его предложенные действия, за исключением перепевы (который я не уверен, как это сделать с РВМ, и не хотел, чтобы переключить к rbenv просто попробовать). Я скачал все драгоценные камни, он рекомендовал в папку, и побежал следующую команду:

gem install *.gem -- --with-ruby-include=$(echo ~/.rvm/rubies/1.9.3-p194/include/ruby-1.9.1/ruby-1.9.3-p194/) --no-rdoc --no-ri 

Он установлен linecache19-0.5.13 штрафа, но он подавился рубиновой отладочной base19-0.11.26.gem, производство первая ошибка снова.

Я также попытался удалить отладчики, добавленные при запуске sudo gem install debugger, но это ничего не изменило.

Я в недоумении, что делать дальше.

+0

Как правило, вы не должны использовать Sudo при использовании RVM, хотя я не думаю, это связано с вашей проблемой. –

ответ

0

ruby-debug не работает для ruby ​​1.9, вместо этого попробуйте вместо этого «pry». Может быть, можно получить рубин-отладочную работу, но я бы не стал рассчитывать на это.

Debugging in ruby 1.9

+0

Да, я переключился на несколько недель назад, и он работает блестяще. – andrewhl

+0

это сработало для меня: https://gist.github.com/1331533 – tokland

0

Я знаю, этот вопрос довольно старый, но я получил ту же ошибку сегодня, и это первый результат, когда я Google ошибку.

Для меня отладчик установки, как зависимость и работает

gem install debugger 

перед тем расслоением установил ее.

0

Просто наткнулся на это с помощью Ruby 2.0.0, установленного через RVM.

РВМ будет просто установить с двоичными файлами, если они доступны, что быстрее, но отладчик источник слишком

rvm reinstall 2.0.0 --disable-binary