我正在尝试将一些宝石安装到Logstash 1.4.2
中为此我用Google搜索并找到了答案(how to add gems into logstash)
在得到答案后,我可以轻松安装续集宝石。
但是当我尝试像这样安装mysql gem时:
cd logstash-1.4.2/
env GEM_HOME=vendor/bundle/jruby/1.9 GEM_PATH="" java -jar vendor/jar/jruby-complete-1.7.11.jar -S gem install mysql
我收到以下错误:
Building native extensions. This could take a while...
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
java -jar /home/deepak/logstash-1.4.2/vendor/jar/jruby-complete-1.7.11.jar extconf.rb
NotImplementedError: C extension support is not enabled. Pass -Xcext.enabled=true to JRuby or set JRUBY_OPTS.
(root) at file:/home/deepak/logstash-1.4.2/vendor/jar/jruby-complete-1.7.11.jar!/META-INF/jruby.home/lib/ruby/shared/mkmf.rb:8
require at org/jruby/RubyKernel.java:1085
(root) at file:/home/deepak/logstash-1.4.2/vendor/jar/jruby-complete-1.7.11.jar!/META-INF/jruby.home/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:1
(root) at extconf.rb:5
Gem files will remain installed in /home/deepak/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/mysql-2.9.1 for inspection.
Results logged to /home/deepak/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/mysql-2.9.1/ext/mysql_api/gem_make.out
我对ruby很新,所以我不知道这里缺少什么,我试图添加-Xcext.enabled = true
env GEM_HOME=vendor/bundle/jruby/1.9 GEM_PATH="" java -jar vendor/jar/jruby-complete-1.7.11.jar -S -Xcext.enabled=true gem install mysql
但是,这给了我另一个错误:
NameError: uninitialized constant Xcext
const_missing at org/jruby/RubyModule.java:2690
(root) at -Xcext.enabled=true:1
另外,我正在运行Ubuntu 14.04 64位。如果需要更多信息,请发表评论。