为什么在 Ubuntu 中安装 JSON gem 时出现错误?

问题描述 投票:0回答:2

使用 Ubuntu,当我运行“

bundle install
”来设置 Rails 环境时,它在 JSON gem 安装过程中抛出错误:

Installing json (1.7.3) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

/usr/bin/ruby1.9.1 extconf.rb 
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from extconf.rb:1:in `<main>'

Gem files will remain installed in /home/danny/.bundler/tmp/2040/gems/json-1.7.3 for inspection.
Results logged to /home/danny/.bundler/tmp/2040/gems/json-1.7.3/ext/json/ext/parser/gem_make.out
An error occured while installing json (1.7.3), and Bundler cannot continue.
Make sure that `gem install json -v '1.7.3'` succeeds before bundling.

当我尝试仅安装 JSON 1.7.3 gem 时,它也会给我一个错误:

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

/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from extconf.rb:1:in `<main>'

Gem files will remain installed in /var/lib/gems/1.9.1/gems/json-1.7.3 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/json-1.7.3/ext/json/ext/parser/gem_make.out

我已经安装了 RVM 并正在运行 Ruby 1.9.3;为什么无法安装 JSON gem?

ruby-on-rails ruby json ubuntu rubygems
2个回答
71
投票

安装

ruby1.9.1-dev
软件包应该可以解决这个问题:

sudo apt-get install ruby1.9.1-dev

0
投票

在终端上运行这些命令:-

rvm install ruby-1.9.3-p551

gem install bundler -v '~> 1.17.3'

那么,

bundle install --force

© www.soinside.com 2019 - 2024. All rights reserved.