Вопрос

Я пытаюсь установить bcrypt-рубин в Windows Vista.

До сих пор мне удавалось установить nmake.exe из статьи базы знаний MS и cl.exe из установки Visual Studio 2008 Express.

Однако сейчас я сталкиваюсь с этой ошибкой:

cl -nologo -Wall -I. -IC:/InstantRails/ruby/lib/ruby/1.8/i386-mswin32 -I
C:/InstantRails/ruby/lib/ruby/1.8/i386-mswin32 -I. -MD -Zi -O2b2xg- -G6  -c -Tcb crypt.c
cl : Command line warning D9035 : option 'Og-' has been deprecated and will be removed in a future release
cl : Command line warning D9002 : ignoring unknown option '-G6' bcrypt.c
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\stdio.h(381) : warning C4255: '_get_printf_count_output' : no function prototype given: converting '()' to '(void)'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\stdlib.h(215) : warning C4255: '_get_purecall_handler' : no function prototype given: converting '()' to '(void)' 
c:\instantrails\ruby\lib\ruby\gems\1.8\gems\bcrypt-ruby-2.1.2\ext\mri\blf.h(37): fatal error C1083: Cannot open include file: 'stdint.h': No such file or directory
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.EXE"' : return code '0x2' Stop.

Я уже выполнил VCVARS32.bat, который, предположительно, настраивает среду.Я подозреваю, что предупреждения и ошибки связаны с установкой более новой версии Visual Studio.

Кто-нибудь сделал это успешно?У меня нет копии Visual Studio 6.0.

Это было полезно?

Решение

Лучший и самый простой способ - это установить набор для разработки:

  1. Скачать devkit-<version>.7z От здесь;
  2. распакуйте его в каталог Ruby (например, C:\Ruby, так что у вас будет C:\Ruby\devkit;
  3. из командной строки введите: gem install bcrypt-ruby.

Другие советы

Чтобы иметь возможность создать расширение gem для установщика в один клик (OCI), вам нужен VC6.Mxing и сопоставление различных версий более новой Visual Studio приведет к сбою или вызовет неизвестные ошибки во время выполнения.

Я бы рекомендовал избежать всех этих неприятностей и перейти к преемнику One-Click, который называется RubyInstaller.

  1. Загрузите и установите пакеты 1.8.6 или 1.9.1 RC1, анонсировано на RubyForge
  2. Загрузите комплект для разработки и распакуйте его при установке Ruby
  3. Подписаться INSTALL.txt инструкции по настройке DevKit в соответствии с местоположением, в котором вы его извлекли
  4. Продолжайте с gem install bcrypt-ruby, будет работать " из коробки "

Для получения более подробной информации об использовании других драгоценных камней или Rails с этой более новой версией, пожалуйста, смотрите Руководства раздел в нашей Вики.

Надеюсь, это поможет.

Попробуйте следующую команду

драгоценный камень устанавливает bcrypt-ruby --platform=mswin32

Для меня сработало следующее

gem uni bcrypt-ruby
gem i bcrypt-ruby --platform=ruby

Я столкнулся с той же проблемой при установке devise в Windows.

может быть, вы могли бы оформить это:http://github.com/oneclick/rubyinstaller/wiki/development-kit

и Джорджиан прав, обратите здесь внимание:

  1. версия ruby:вы должны установить версию "ruby installer", но не версию .zip или другую версию.

  2. распакуйте его в каталог Ruby (например, C: uby, чтобы у вас был C: uby\devkit;

  3. Если вы установили ruby из другого установочного файла (который не является ruby-installer), вы ДОЛЖНЫ удалить его, затем установить ruby с помощью ruby installer.не стоит просто перезаписывать его.

  4. нет необходимости устанавливать VC6, он не будет работать с другой версией ruby setup (которая не является ruby-installer) .если вы установили его только для настройки ruby-gem, я предлагаю вам удалить его.

  5. нет необходимости устанавливать MinGW, потому что dev-kit основан на нем.

Я потратил почти 15 часов, чтобы решить эту проблему.и теперь пришло время сказать, что "ruby-installer" + "dev kit" - это наш выбор для создания native gem.

В Windows Server 2003 (Ruby 1.8.6) обычный ванильный:

gem install bcrypt-ruby

сработало как по волшебству.
Обратите внимание, что если вы хотите использовать его с Rails, вы должны использовать:

config.gem 'bcrypt-ruby', :lib => 'bcrypt'

Для меня часть проблемы заключалась в том факте, что у меня был установлен Ruby2.0.0 x64 (я использую win8), который, казалось, был несовместим с компилятором gcc, который я использовал.

Я удалил свою установку ruby и установил ruby 1.9.3 вместе с Bundler, Rails и некоторыми другими пакетами с использованием RailsInstaller (http://railsinstaller.org/) и теперь я могу установить bcrypt-ruby :)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top