2014-12-13 3 views
4

Я пытаюсь создать новый проект Rails и когда я бег рельсы нового APPNAME он говорит мнеНе может пройти установки отладчика

Could not find debugger-1.6.8 in any of the sources 
Run `bundle install` to install missing gems.

Затем, когда я бег пакет установки я получаю эту ошибку

Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 

    /Users/username/.rvm/rubies/ruby-2.1.4/bin/ruby -r ./siteconf20141213-76431-12dyum4.rb extconf.rb 
*** 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=/Users/username/.rvm/rubies/ruby-2.1.4/bin/ruby 
/Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:1401:in `initialize': No such file or directory @ rb_sysopen - ./214/ruby_debug.h (Errno::ENOENT) 
    from /Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:1401:in `open' 
    from /Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:1401:in `copy_file' 
    from /Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:483:in `copy_file' 
    from /Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:400:in `block in cp' 
    from /Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:1579:in `block in fu_each_src_dest' 
    from /Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:1593:in `fu_each_src_dest0' 
    from /Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:1577:in `fu_each_src_dest' 
    from /Users/username/.rvm/rubies/ruby-2.1.4/lib/ruby/2.1.0/fileutils.rb:399:in `cp' 
    from extconf.rb:83:in `block in ' 
    from extconf.rb:82:in `each' 
    from extconf.rb:82:in `' 

extconf failed, exit code 1 

Gem files will remain installed in /Users/username/.rvm/gems/ruby-2.1.4/gems/debugger-1.6.8 for inspection. 
Results logged to /Users/username/.rvm/gems/ruby-2.1.4/extensions/x86_64-darwin-13/2.1.0-static/debugger-1.6.8/gem_make.out

Я знаю, что отладчик не работает с Ruby 2.1.4, так как я могу заставить диспетчер перестать пытаться его установить? Нужно ли использовать шаблон приложения rails?

+0

Какова ваша версия Rails? 4.1.8 не включает 'отладчик' по умолчанию, он закомментирован. –

+0

похоже, что вам не хватает заголовков разработки. Содержит ли содержание /Users/username/.rvm/gems/ruby-2.1.4/extensions/x86_64-darwin-13/2.1.0-static/debugger-1.6.8/gem_make.out какие-либо подсказки? – ptierno

+0

Я считаю, что я использую 4.1.8, поэтому, если его прокомментировать, разве я не должен получать эту ошибку? – drabnew

ответ

2

Для этого точного случая - запишите или удалите его и любые драгоценные камни, которые зависят от него (посмотрите Gemfile.lock) с вашего Gemfile в корне вашего проекта, затем запустите bundle install.

Rails 4.1.8 фактически создает приложение Gemfile с debugger, так что он должен уже работать нормально.

Если вам действительно нужен отладчик, вы можете использовать byebug, замену на debugger для Ruby 2.0+. В предстоящем выпуске Rails 4.2.0 это already baked into the generator.

При создании нового приложения, вы можете также добавить опцию -B или --skip-bundle к не запустить bundle install после создания приложения скелета. Затем вы можете исправить свой Gemfile и запустите bundle install в папке проекта. Это только экономит вам немного времени.

0

Причина этой неудачи «byebug» драгоценный камень, который присутствует в вашем Gemfile .Вы можете увидеть его в группе «develpement & тест» из Gemfile, который выглядит как-то

group :development, :test do 
    # Call 'byebug' anywhere in the code to stop execution and get a debugger console 
    gem 'byebug' 

«byebug 'имеет такую ​​же функциональность как «debugger» - любой, кто интересуется документацией, может посетить Github.