
我已經使用rvm在rails上安裝了ruby。我正在使用 2.2.0 ruby 和 4.2.0 Rails。我嘗試在我在以前的電腦上開發的舊專案上運行捆綁安裝,但我得到:
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/home/florin/.rvm/rubies/ruby-2.2.3/bin/ruby -r ./siteconf20151003-6297-foug8b.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=/home/florin/.rvm/rubies/ruby-2.2.3/bin/$(RUBY_BASE_NAME)
/home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:1391:in `initialize': No such file or directory @ rb_sysopen - ./223/ruby_debug.h (Errno::ENOENT)
from /home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:1391:in `open'
from /home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:1391:in `copy_file'
from /home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:485:in `copy_file'
from /home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:402:in `block in cp'
from /home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:1570:in `block in fu_each_src_dest'
from /home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:1584:in `fu_each_src_dest0'
from /home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:1568:in `fu_each_src_dest'
from /home/florin/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/fileutils.rb:401:in `cp'
from extconf.rb:83:in `block in <main>'
from extconf.rb:82:in `each'
from extconf.rb:82:in `<main>'
extconf failed, exit code 1
Gem files will remain installed in /home/florin/.rvm/gems/ruby-2.2.3/gems/debugger-1.6.8 for inspection.
Results logged to /home/florin/.rvm/gems/ruby-2.2.3/extensions/x86_64-linux/2.2.0/debugger-1.6.8/gem_make.out
An error occurred while installing debugger (1.6.8), and Bundler cannot
continue.
Make sure that `gem install debugger -v '1.6.8'` succeeds before bundling.
閱讀互聯網我嘗試安裝所有開發工具,例如: sudo apt-get install libpq-dev
sudo apt-get install libmysqlclient-dev
sudo apt-get install libpq-dev
sudo apt-get install libsqlite3-dev
sudo apt-get install libev-dev
但沒有成功。
答案1
當我從 ruby-1.9.3-p385 升級到 ruby-2.2.3 時,也發生了同樣的事情。
看起來,當您產生專案時,Rails 將為 Ruby 版本使用適當的 gem,但不能保證這些 gem 適用於其他 Ruby 版本。
在這種情況下,偵錯器不支援 2.1.1 以上的 Ruby,您可以將其替換為:
gem 'debugger'
和:
gem 'byebug'
在你的 Gemfile 中。