titov_andrei
@titov_andrei
All my life I learn - and die a fool!

В чём ошибка при установке Rails?

Что пошло не так и как исправить?

$ gem i rails
Temporarily enhancing PATH for MSYS/MINGW...
Building native extensions. This could take a while...
ERROR:  Error installing rails:
        ERROR: Failed to build gem native extension.

    current directory: D:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/websocket-driver-0.7.1/ext/websocket-driver
D:/Ruby26-x64/bin/ruby.exe -I D:/Ruby26-x64/lib/ruby/2.6.0 -r ./siteconf20190912-8476-1pme8ot.rb extconf.rb
creating Makefile

current directory: D:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/websocket-driver-0.7.1/ext/websocket-driver
make "DESTDIR=" clean

current directory: D:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/websocket-driver-0.7.1/ext/websocket-driver
make "DESTDIR="
generating websocket_mask-x64-mingw32.def
make: *** No rule to make target '/D/Ruby26-x64/include/ruby-2.6.0/ruby.h', needed by 'websocket_mask.o'.  Stop.

make failed, exit code 2

Gem files will remain installed in D:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/websocket-driver-0.7.1 for inspection.
Results logged to D:/Ruby26-x64/lib/ruby/gems/2.6.0/extensions/x64-mingw32/2.6.0/websocket-driver-0.7.1/gem_make.out
  • Вопрос задан
  • 36 просмотров
Пригласить эксперта
Ответы на вопрос 1
2ord
@2ord
продвинутый чайник
Там же написано,
No rule to make target '/D/Ruby26-x64/include/ruby-2.6.0/ruby.h', needed by 'websocket_mask.o'

Может, отсутствует MSYS2 Devkit? Или неверно настроены пути в переменных окружения.
Без этого расширения, требующие компиляции исходных кодов на Си в gem, не получится установить.
Кроме того, не факт, что эти исходники написаны с учетом платформы Windows. Обычно пишут для POSIX систем и не заморачиваются. Если нет, то стоит попросить у автора websocket-driver добавить поддержку Windows.
Или ...
Как вариант, стоит попробовать JRuby (работает на JVM) или работать в Linux посредством Windows WSL (Windows 10)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы