1

这是我的宝石环境:

RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.5
  - RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [x86_64-linux]
  - INSTALLATION DIRECTORY: /var/lib/gems/1.8
  - RUBY EXECUTABLE: /usr/bin/ruby1.8
  - EXECUTABLE DIRECTORY: /var/lib/gems/1.8/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /var/lib/gems/1.8
     - /home/haonanzhang/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://gems.rubyforge.org/

我想安装水龙头以从 Heroku 导出数据库。

但是当我运行 sudo gem install taps 时,我收到以下错误。

ERROR:  Error installing taps:
        ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
extconf.rb:3:in `require': no such file to load -- mkmf (LoadError)
        from extconf.rb:3

有什么建议么?

谢谢。

4

2 回答 2

1

我的 mac 崩溃后,我遇到了同样的错误。我不想使用 win,所以我在我的 win 盒子上加载了Ubuntu,并在 5 小时内完成了所有工作。

您需要进入 readline 并执行一个 make 文件。我还强烈建议您使用rvm来管理您的 gems 和 ruby​​ 版本。您可以在 gem 和版本之间切换,在这种情况下您可能需要这样做。

  1. cd ruby​​/版本/ext/redline
  2. 红宝石 extconf.rb
  3. 制作
  4. 须藤使安装

确保您替换version为您的 ruby​​ 版本并为 ruby​​ 填写适当的路径。

另一个已知问题是 ruby​​ 版本,这就是为什么rvm是在 gem 和 ruby​​ 版本之间切换的绝佳资源。ruby 1.9.1 在水龙头和 AFAIK Ubuntu 方面存在问题,也可能是其他操作系统。

在按照上面的说明运行 make 文件后,我不得不将 ruby​​ 版本切换到 1.8.7 以获取从 herkou 提取数据的水龙头,然后切换回 1.9.1 进行开发。我在mac上从来没有这个问题仅供参考。

于 2010-08-21T01:17:36.997 回答
1

尝试:

sudo apt-get install ruby1.8-dev
于 2011-06-08T13:43:33.940 回答