Nano Hash - криптовалюты, майнинг, программирование

Ошибка установки Puma на Windows

Я пытаюсь установить puma gem на машину с Windows. Я получаю следующую ошибку. Перерыл пару форумов, но тщетно.

C:/railsInstaller/Ruby2.0.0/bin/ruby.exe extconf.rb 
creating Makefile

make
generating puma_http11-i386-mingw32.def
compiling http11_parser.c
ext/http11/http11_parser.rl: In function 'puma_parser_execute':
ext/http11/http11_parser.rl:111:3: warning: comparison between signed and unsigned integer expressions
compiling io_buffer.c
io_buffer.c: In function 'buf_to_str':
io_buffer.c:119:3: warning: pointer targets in passing argument 1 of 'rb_str_new' differ in signedness
c:/RailsInstaller/Ruby2.0.0/include/ruby-2.0.0/ruby/intern.h:668:7: note: expected 'const char *' but argument is of type 'uint8_t *'
compiling mini_ssl.c
In file included from mini_ssl.c:3:0:
c:/RailsInstaller/Ruby2.0.0/include/ruby-2.0.0/ruby/backward/rubyio.h:2:2: warning: #warning use "ruby/io.h" instead of "rubyio.h"
mini_ssl.c:4:25: fatal error: openssl/bio.h: No such file or directory
compilation terminated.
make: *** [mini_ssl.o] Error 1

Я попытался установить пакеты и библиотеки заголовков openSSL, как указано на https://github.com/puma/puma/issues/202 ссылки не работают.



Ответы:


1

Я запускал bundle update перед bundle install, и это решило проблему для меня.

Я не уверен, что это единственное, что помогло, так как до этого я вручную обновил puma, выполнив следующие действия:

  1. Проверил, какую версию openssl Ruby использует, запустив ruby -v -ropenssl -e "puts OpenSSL::OPENSSL_VERSION"
  2. Скачал правильную версию openssl с http://packages.openknapsack.org/openssl/openssl-1.0.0o-x86-windows.tar.lzma (ссылка взята с https://github.com/hicknhack-software/rails-disco/wiki/Installing-puma-on-windows и отредактировал его на основе вывода № 1).
  3. Распаковал openssl с помощью http://www.7-zip.org в C:\RailsInstaller\openssl
  4. gem install puma -- --with-opt-dir=C:/RailsInstaller/openssl
07.02.2015
  • Рад, что вы нашли это полезным! 03.06.2015
  • Вы спасли и мой день. Спасибо!! 09.07.2015
  • Не за что! Рад, что это помогло вам. 10.07.2015
  • невероятный! до сих пор я думал, что пума не поддерживает окна. Спасибо, что написали. 03.09.2015
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..