【问题标题】:cannot load such file -- mkmf (LoadError)无法加载此类文件 -- mkmf (LoadError)
【发布时间】:2015-10-27 20:23:17
【问题描述】:

使用 rbenv,运行 bundle install,安装 Json 1.8.1 时出错。

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>'

尝试通过 apt 安装 ruby​​-dev(不确定是否会有所帮助,因为 ruby​​ 是通过 rbenv 安装的)

可能有帮助的东西?

$ which gem
/home/ubuntu/.rbenv/shims/gem
$ which ruby
/home/ubuntu/.rbenv/shims/ruby
$ locate mkmf
/home/ubuntu/.rbenv/versions/1.9.3-p484/lib/ruby/1.9.1/mkmf.rb
/home/ubuntu/.rbenv/versions/1.9.3-p484/share/ri/1.9.1/system/Object/mkmf-i.ri
/usr/local/rvm/gems/ruby-2.2.1/extensions/x86_64-linux/2.2.0/nokogiri-1.6.6.2/mkmf.log
/usr/local/rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/mkmf.rb

【问题讨论】:

    标签: ruby-on-rails ruby passenger rbenv


    【解决方案1】:

    根据您的 locate 命令,您在 rvm 和 ubuntu 的主目录中有 mkmf,但在系统上没有,并且您明确使用系统的 ruby​​(而不是 rbenv 或 rvm)来运行 extconf.rb。从您拥有 mkmf 的环境之一运行 ruby​​,或者在系统上安装 ruby​​-dev 软件包。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-25
      • 2015-05-30
      • 2015-01-22
      • 2012-10-25
      • 2020-12-05
      • 2017-03-18
      • 2018-07-31
      • 2015-03-20
      相关资源
      最近更新 更多