如何在jRuby中启用C扩展支持?

时间:2013-04-03 19:11:01

标签: ruby configuration rubygems jruby

我想安装一个gem,但是我收到以下错误:

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

        C:/nwcloud/jruby-1.7.2/bin/jruby.exe extconf.rb
NotImplementedError: C extension support is not enabled. Pass -Xcext.enabled=true to JRuby or set JRUBY_OPTS or modify .jrubyrc to enable.

我也读过this question同样的问题,但我甚至不知道如何使用这三个选项启用支持,因为我不知道如何将-Xcext.enabled=true传递给JRuby或设置JRUBY_OPTS或修改.jrubyrc以启用。

有人可以帮我解决我的初学者问题吗?

2 个答案:

答案 0 :(得分:20)

罗德里戈建议的.jrubyrc编辑对我不起作用(jdk 7u25 / JRuby 1.7.4),但导出JRUBY_OPTS确实有效:

export JRUBY_OPTS="--1.9 -Xcext.enabled=true"

答案 1 :(得分:8)

确保您使用的是最新的openjdk(撰写本文时为7更新21)和最新的JRuby(1.7.4)。

在用户主文件夹中创建名为.jrubyrc的文件。

添加以下内容;

cext.enabled=true

完成