Я не могу установить камень-хорька на свой компьютер с помощью:
gem install ferret
Вот ошибка:
macbookpro:tehago davidpombarlourido$ sudo gem install ferret Password: Building native extensions. This could take a while... ERROR: Error installing ferret: ERROR: Failed to build gem native extension. /Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/bin/ruby extconf.rb creating Makefile make gcc -I. -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -D_FILE_OFFSET_BITS=64 -o analysis.o -c analysis.c analysis.c: In function ‘w_tk_set’: analysis.c:46: warning: implicit conversion shortens 64-bit value into a 32-bit value analysis.c: In function ‘mb_next_char’: analysis.c:165: warning: implicit conversion shortens 64-bit value into a 32-bit value analysis.c: In function ‘nt_next’: analysis.c:249: warning: implicit conversion shortens 64-bit value into a 32-bit value analysis.c: In function ‘hf_next’: analysis.c:1240: warning: implicit conversion shortens 64-bit value into a 32-bit value analysis.c:1282: warning: implicit conversion shortens 64-bit value into a 32-bit value analysis.c:1284: warning: implicit conversion shortens 64-bit value into a 32-bit value analysis.c:1285: warning: implicit conversion shortens 64-bit value into a 32-bit value analysis.c: In function ‘mb_lcf_next’: analysis.c:1315: warning: implicit conversion shortens 64-bit value into a 32-bit value analysis.c:1321: warning: implicit conversion shortens 64-bit value into a 32-bit value gcc -I. -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -D_FILE_OFFSET_BITS=64 -o api.o -c api.c gcc -I. -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -D_FILE_OFFSET_BITS=64 -o array.o -c array.c gcc -I. -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -D_FILE_OFFSET_BITS=64 -o bitvector.o -c bitvector.c gcc -I. -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -D_FILE_OFFSET_BITS=64 -o compound_io.o -c compound_io.c compound_io.c: In function ‘cw_copy_file’: compound_io.c:317: warning: implicit conversion shortens 64-bit value into a 32-bit value compound_io.c:318: warning: implicit conversion shortens 64-bit value into a 32-bit value gcc -I. -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -D_FILE_OFFSET_BITS=64 -o document.o -c document.c document.c: In function ‘df_new’: document.c:19: warning: implicit conversion shortens 64-bit value into a 32-bit value document.c: In function ‘df_add_data’: document.c:38: warning: implicit conversion shortens 64-bit value into a 32-bit value document.c: In function ‘df_to_s’: document.c:58: warning: implicit conversion shortens 64-bit value into a 32-bit value document.c: In function ‘doc_new’: document.c:105: warning: implicit conversion shortens 64-bit value into a 32-bit value document.c: In function ‘doc_to_s’: document.c:137: warning: implicit conversion shortens 64-bit value into a 32-bit value gcc -I. -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -D_FILE_OFFSET_BITS=64 -o except.o -c except.c except.c:28: warning: initialization discards qualifiers from pointer target type except.c:29: warning: initialization discards qualifiers from pointer target type gcc -I. -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/davidpombarlourido/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -D_FILE_OFFSET_BITS=64 -o ferret.o -c ferret.c ferret.c: In function ‘rs2s’: ferret.c:165: error: ‘struct RString’ has no member named ‘ptr’ ferret.c:165: error: ‘struct RString’ has no member named ‘ptr’ ferret.c: In function ‘nstrdup’: ferret.c:172: error: ‘struct RString’ has no member named ‘len’ ferret.c: In function ‘frt_field’: ferret.c:183: warning: return discards qualifiers from pointer target type ferret.c: In function ‘vfrt_rb_raise’: ferret.c:254: warning: format not a string literal and no format arguments ferret.c: In function ‘frt_term_to_s’: ferret.c:297: error: ‘struct RString’ has no member named ‘len’ ferret.c:297: error: ‘struct RString’ has no member named ‘len’ make: *** [ferret.o] Error 1 Gem files will remain installed in /Users/davidpombarlourido/.rvm/gems/ruby-1.9.2-p180/gems/ferret-0.11.6 for inspection. Results logged to /Users/davidpombarlourido/.rvm/gems/ruby-1.9.2-p180/gems/ferret-0.11.6/ext/gem_make.out
У меня была такая же ошибка, и я решил ее, установив другой гем:
gem install sdsykes-ferret
Я использую ruby 1.9.2 и думаю, что камень "ferret" на нем не работает.
На Github есть открытый вопрос об этом: здесь