新しいプロジェクトのバンドルを実行しようとすると、次のエラーが発生します。
Installing debugger (1.2.2) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
C:/Ruby193/bin/Ruby.exe 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
checking for rb_method_entry_t.called_id in method.h... no
checking for rb_control_frame_t.method_id in method.h... no
Makefile creation failed
**************************************************************************
No source for Ruby-1.9.3-p362 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
--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=C:/Ruby193/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 C:/Ruby193/lib/Ruby/gems/1.9.1/gems/debugger-1.2.2 for inspection.
Results logged to C:/Ruby193/lib/Ruby/gems/1.9.1/gems/debugger-1.2.2/ext/Ruby_debug/gem_make.out
An error occured while installing debugger (1.2.2), and Bundler cannot continue.
Make sure that `gem install debugger -v '1.2.2'` succeeds before bundling.
ランニング gem install debugger -v '1.2.2'
も同じ結果になります。
Mkmf.logとgem_make.outファイルの内容を確認しましたが、ほとんど意味がありませんが、要求があれば投稿します。
なぜこれが機能しないのですか?
同じ問題に遭遇しました。私は試した:
_bundle update debugger
_
私のGemfileはこれを持っていました:
_gem 'debugger'
_
そしてそれはうまくいった、私はGemfileを変更する必要はなかった。バンドルの出力はこのようなものを示しています
_...
_
Installing debugger-Ruby_core_source (1.1.6)
Installing debugger-linecache (1.1.2) with native extensions
Installing debugger (1.1.4) with native extensions
_...
_
この問題の解決策は、単にdebugger-Ruby_core_source gem-a githubのeielによるdebugger-Ruby_core_sourceのフォークバージョン をインストールすることでした。
多くの試行錯誤の後(私の側で)、私は単に
gem install debugger-Ruby_core_source -v '1.1.6'
これにより、p362ヘッダーが強制的に含まれます。次に、bundle
を実行したときに、ネイティブ拡張を使用してデバッガが正常にビルドされ、バンドルはそれを続行し、私もそうしました。
ただのメモですが、simplyを数回使用しましたが、実際にアクセスする前に、いくつかのことを試し、これを機能させるために数時間費やしましたsimpleソリューション。
たぶんそれはバンドルのアップデートを使う方が良いでしょう。
$バンドル更新デバッガー-Ruby_core_source
すべてのデバッガgemの更新を使用することを検討してください:
$バンドル更新デバッガー
しばらく試してみて、ようやくあきらめてdebugger
をbyebug
に置き換えました。
てこで使用するには:
gem 'pry', group: [:development, :test]
gem 'pry-byebug', group: [:development, :test]
次に、binding.pry
デバッガーを開始する任意の場所のステートメント。
Ruby 2. *ではデバッガはサポートされていないようです。代わりにbyebugを使用してください。 http://edgeguides.rubyonrails.org/debugging_Rails_applications.html#debugging-with-the-byebug-宝石
Ruby 2.0.0がRVM経由でインストールされた状態でこれに遭遇しました。他の解決策はどれも私にとってうまくいきませんでした。
RVMは、使用可能な場合はバイナリとともにインストールされます。これは高速ですが、デバッガーにもソースが必要です。
rvm reinstall 2.0.0 --disable-binary
rvmを使用する場合は、debase-Ruby_core_sourceまたはdebugger-Ruby_core_sourceと一致する適切なサブバージョンがあることを確認してください。
つまり、debase-Ruby_core_sourceでRuby 2.0.0はp195、p247、p353、p451、p481、p576のみをサポートします。上記はサポートされていません。
あなたのRubyバージョンが提供されたソースと一致しない場合、それを実行することはできません。(それが原因で「ソースエラーが見つかりません!」)
------------debase-Ruby_core_source 0.6.0 vm_Core support list ----------------
../usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.0.0-p0/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.0.0-p195/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.0.0-p247/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.0.0-p353/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.0.0-p451/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.0.0-p481/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.0.0-p576/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.1.0-p0/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.1.1-p76/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.1.2-p95/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.1.3-p242/vm_core.h
./usr/local/rvm/rubies/Ruby-2.0.0-p598/lib/Ruby/gems/2.0.0/gems/debase-Ruby_core_source-0.6.0/lib/debase/Ruby_core_source/Ruby-2.2.0-preview1/vm_core.h
それは私のために働きました:
$ rvm use 2.0
またはそれをデフォルトにする:
$ rvm use --default 2.0