dbalmain / ferret

Ferret: the extensible information retrieval library for ruby.
http://ferret.davebalmain.com
MIT License
279 stars 59 forks source link

Won't compile for ruby-2.0.0-p195 #7

Closed fotanus closed 11 years ago

fotanus commented 11 years ago

It works well with ruby-2.0.0-rc2, but not with p195. I didn't dig deeper to see the problem, just switch back to 2.0.0-rc2 for now.

Here is the output:

user@app:~/sandbox/app$ gem install ferret
Building native extensions.  This could take a while...
ERROR:  Error installing ferret:
ERROR: Failed to build gem native extension.

/home/user/.rvm/rubies/ruby-2.0.0-p195/bin/ruby extconf.rb
creating Makefile

make
compiling BZLIB_blocksort.c
compiling STEMMER_stem_UTF_8_norwegian.c
compiling STEMMER_stem_UTF_8_romanian.c
compiling STEMMER_api.c
compiling hash.c
In file included from /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/ruby.h:1567,
   from /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby.h:33,
   from lang.h:7,
   from global.h:10,
   from hash.h:8,
   from hash.c:1:
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:323: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rb_fdset_t’
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:412: error: expected declaration specifiers or ‘...’ before ‘fd_set’
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:412: error: expected declaration specifiers or ‘...’ before ‘fd_set’
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:412: error: expected declaration specifiers or ‘...’ before ‘fd_set’
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:412: warning: ‘struct timeval’ declared inside parameter list
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:412: warning: its scope is only this definition or declaration, which is probably not what you want
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:413: error: expected declaration specifiers or ‘...’ before ‘rb_fdset_t’
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:413: error: expected declaration specifiers or ‘...’ before ‘rb_fdset_t’
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:413: error: expected declaration specifiers or ‘...’ before ‘rb_fdset_t’
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:413: warning: ‘struct timeval’ declared inside parameter list
   /home/user/.rvm/rubies/ruby-2.0.0-p195/include/ruby-2.0.0/ruby/intern.h:414: warning: ‘struct timeval’ declared inside parameter list
   hash.c:14: warning: initialization discards qualifiers from pointer target type
   hash.c:15: warning: initialization discards qualifiers from pointer target type
   make: *** [hash.o] Error 1
elhu commented 11 years ago

I have the same issue. However, it's worth noting that it installs successfully on Mac OSX 10.8.4. Did you manage to solve the issue?

fotanus commented 11 years ago

@elhu not yet, sorry. The update was postpone, and with it, this issue. Let us know if you find the problem the solution.

elhu commented 11 years ago

@fotanus I tried installing ferret with the latest ruby release (p247), and it compiles again !

fotanus commented 11 years ago

@elhu great! Thanks for letting me know! Let's close this then.