Ошибка установки debugger-linecache в Ruby 1.9.3
Мне нужна версия 1.0.1 debugger-linecache
для проекта, и я сталкиваюсь со следующей ошибкой при попытке установить.
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 ответов
Это может помочь вам, это работает для меня
gem install debugger-linecache -v '1.1.2' -- --with-ruby-include=$rvm_path/src/ruby-1.9.3-p286/
Эта ошибка означает, что выбранная версия debugger
не поддерживает вашу текущую версию Ruby. Есть два решения:
- Обновите
debugger
драгоценный камень черезbundle update debugger
, Новые версииdebugger
обратно совместимы со старыми версиями Ruby, так что это лучший способ исправить это. - Понизьте вашу версию Ruby.
Обновить / установить gem debugger-ruby_core_source
,
gem install debugger-ruby_core_source
это было исправлено здесь: https://github.com/cldwalker/debugger-ruby_core_source/pull/7
Проблема была в том, что я неправильно использовал gemsets. Я знал, что отсутствие разрешений было проблемой, так как под RVM мне не нужно sudo для установки чего-либо.
rvm gemset use global
а затем bundle install
сделал трюк.
Из ссылки ниже:
https://github.com/cldwalker/debugger/issues/50
Я установил gem ruby-debug19, и проблема для меня решена, как показано ниже:
$ bundle
... -> failed to build debugger-linecache
$ gem install ruby-debug19
$ bundle
... -> all is fine
В моем случае проблема не была связана с debugger-linecache
непосредственно. Либо попробуйте обновить debugger-ruby_core_source
или понизить Ruby несколькими уровнями исправлений.
Я выполнил bundle update debugger-linecache
, Хотя у меня была его новейшая версия в Gemfile.lock, debugger-ruby_core_source
был обновлён до 1.1.5 и отладчик-linecache перестал жаловаться.
Я установил гем debugger-ruby_core_source, основываясь на старых ответах здесь: https://github.com/cldwalker/debugger/issues/12
Ваш Gemfile.lock не был написан с тем же Ruby, с которым вы пытаетесь связать.
bundle update
должен работать, заставляя Bundler смотреть на разные версии.
Если вы используете rvm, то убедитесь, что путь ведет к ruby, в папке rvm его рубины
$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
Вручную построить его. у меня это работает https://gist.github.com/4060260