make: *** Нет правила для создания цели '~/.rvm/rubies/jruby-9.2.0.0/lib/ruby/include/ruby/ruby.h', необходимой для 'amatch_ext.o'.

Я установил jruby-9.2.0.0 на свой компьютер с Ubuntu, и мое приложение rails использует версию rails 3.1.12, я пытаюсь запустить свое приложение на jruby, и когда я попытался установить все драгоценные камни с помощью команды bundle install, я получил ошибку для одного gem 'amatch'

current directory: /home/user/.rvm/gems/jruby-9.2.0.0/gems/amatch-0.4.0/ext

/home/user/.rvm/rubies/jruby-9.2.0.0/bin/jruby -r ./siteconf20181018-3341-1y55yce.rb extconf.rb создание Makefile

current directory: /home/user/.rvm/gems/jruby-9.2.0.0/gems/amatch-0.4.0/ext
make "DESTDIR=" clean

current directory: /home/user/.rvm/gems/jruby-9.2.0.0/gems/amatch-0.4.0/ext
make "DESTDIR="
make: *** No rule to make target '/home/user/.rvm/rubies/jruby-9.2.0.0/lib/ruby/include/ruby/ruby.h', needed by 'amatch_ext.o'.  Stop.

make failed, exit code 2

Пожалуйста, помогите мне исправить эту ошибку. Спасибо


person Braham Shakti    schedule 18.10.2018    source источник


Ответы (1)


Похоже, что гем amatch использует собственное расширение, которое не поддерживается в JRuby.

Если вы действительно хотите использовать JRuby, единственным решением будет заменить этот драгоценный камень другим.

person milgner    schedule 18.10.2018
comment
В моем приложении много драгоценных камней, использующих собственное расширение, есть ли способ решить эту проблему? - person Braham Shakti; 18.10.2018
comment
Не на самом деле нет. Вы можете взглянуть на Truffle, но он еще не готов к использованию в производственной среде. - person milgner; 18.10.2018
comment
большинство драгоценных камней с собственными расширениями имеют версию Java (собственный JRuby), в отличие от расширений MRI C. так что вам не нужно беспокоиться о каждом драгоценном камне, только о тех, которые ориентированы исключительно на МРТ. amatch, похоже, не использует какие-либо библиотеки, поэтому порт JRuby будет довольно простым (перевод кода C на Java и использование API-интерфейсов JRuby). - person kares; 25.10.2018