taganaka / polipus

Polipus: distributed and scalable web-crawler framework
MIT License
92 stars 32 forks source link

Cannot install on JRuby 1.7.13. Error with bson_ext-1.9.2 #48

Open nengine opened 10 years ago

nengine commented 10 years ago

For some reason I'm not able to install polipus gem on JRuby 1.7.13. Tried both Windows 8.0 and Ubuntu 12.04. Got the same error message.

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

C:/torquebox-3.1.1/jruby/bin/jruby.exe extconf.rb 

NotImplementedError: C extension support is not enabled. Pass -Xcext.enabled=true to JRuby or set JRUBY_OPTS.

(root) at C:/torquebox-3.1.1/jruby/lib/ruby/shared/mkmf.rb:8 require at org/jruby/RubyKernel.java:1065 (root) at C:/torquebox-3.1.1/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:1 (root) at extconf.rb:1

Gem files will remain installed in C:/torquebox-3.1.1/jruby/lib/ruby/gems/shared/gems/bson_ext-1.9.2 for inspection. Results logged to C:/torquebox-3.1.1/jruby/lib/ruby/gems/shared/gems/bson_ext-1.9.2/ext/cbson/gem_make.out An error occurred while installing bson_ext (1.9.2), and Bundler cannot continue. Make sure that gem install bson_ext -v '1.9.2' succeeds before bundling.

taganaka commented 10 years ago

This is odd It works for me and for Travis-ci too according to the latest build

This is where the check is done.

Could you please share the output of the following command?

ruby -e 'ruby -e 'puts JRUBY_VERSION if defined?(JRUBY_VERSION)'

mine is:

me@francescos-mbp polipus (master)$ ruby -e 'puts JRUBY_VERSION if defined?(JRUBY_VERSION)'
1.7.13
me@francescos-mbp polipus (master)$
nengine commented 10 years ago

On Windows got nothing with ruby command, but with jruby command I got 1.7.13

ruby -e 'puts JRUBY_VERSION if defined?(JRUBY_VERSION)'
jruby -e 'puts JRUBY_VERSION if defined?(JRUBY_VERSION)'

On Ubuntu 12.04 even with ruby command I got 1.7.13, but still not sure why it is not picking up

nengine commented 10 years ago

Hi, Please let me know if you like me to test something. I didn't got any value returned after as you instructed.

nash@ubuntu:~/polipus/news/voa$ ruby -e puts 'JRUBY_VERSION if defined?(JRUBY_VERSION)'

nash@ubuntu:~/polipus/news/voa$ 
tmaier commented 10 years ago

@neuralnw the quotation mark is on the wrong place. It must be before "puts".

nengine commented 10 years ago

Hi Thanks, I got below when i use before puts for quotation mark.

nash@ubuntu:~/polipus$ ruby -e 'ruby -e 'puts JRUBY_VERSION if defined?(JRUBY_VERSION)'
> -e:1: syntax error, unexpected tIDENTIFIER, expecting keyword_do or '{' or '('
-bash: syntax error near unexpected token `('
nash@ubuntu:~/polipus$ > 
-bash: syntax error near unexpected token `newline'
nash@ubuntu:~/polipus$ 
tmaier commented 10 years ago

Now your wrote "ruby -e" twice...

nengine commented 10 years ago
nash@ubuntu:~/polipus$ jruby -e 'puts JRUBY_VERSION if defined?(JRUBY_VERSION)'
1.7.13
nash@ubuntu:~/polipus$ 
nash@ubuntu:~/polipus$ rvm use ruby
Using /home/nash/.rvm/gems/ruby-2.1.0
nash@ubuntu:~/polipus$ ruby -e 'puts JRUBY_VERSION if defined?(JRUBY_VERSION)'
nash@ubuntu:~/polipus$ 
akostadinov commented 10 years ago

Seems like bson_ext is not needed on jruby. See http://api.mongodb.org/ruby/1.9.2/

nofxx commented 9 years ago

If you guys could try this fork https://github.com/nofxx/polipus , guess it's fixed. Moved the platform to Gemfile, and requires bson_ext only on mri or rbx.