Подтвердить что ты не робот

Почему я получаю ошибку установки bcrypt-ruby gem?

Получение ошибки при попытке установить драгоценный камень, установка останавливается драгоценный камень bcrypt-ruby:

$ gem install bcrypt-ruby
Error installing bcrypt-ruby:
ERROR: Failed to build gem native extension.

Я запускаю OSX 10.6.7 с Ruby под RVM. Я переустановил последнюю версию xcode и переустановил Ruby 64bit, Rails и все драгоценные камни.

4b9b3361

Ответ 1

У меня была такая же проблема при установке в OSX 10.7.3. При установке драгоценного камня мое сообщение об ошибке было:

Building native extensions.  This could take a while...
ERROR:  Error installing bcrypt-ruby:
ERROR: Failed to build gem native extension.

creating Makefile

make
compiling bcrypt_ext.c
make: /usr/bin/gcc-4.2: No such file or directory
make: *** [bcrypt_ext.o] Error 1

Похоже, что gem ищет gcc-4.2, но у меня есть только файл gcc. Теперь, когда я только что установил последний Xcode (4.3), я знал, что мой компилятор C совместим, но у gem был жестко закодирован gcc-4.2. Итак, я решил:

sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2

Связывание работало как шарм.

Ответ 2

Похоже, что здесь может отсутствовать какая-то информация - для меня это было связано с установкой gcc brew. gcc находился в /usr/bin, но не gcc-4.2. Поэтому я просто сделал следующее:

$ cd /usr/bin
$ sudo ln -s gcc gcc-4.2

который создает ссылку, gcc-4.2, которую ищет жемчуг, который возвращается к gcc.

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

Ответ 3

Для установки bcrypt-ruby требуется установить ruby-dev. Если вы используете Ubuntu, запустите

sudo apt-get install ruby1.9.1-dev

или

sudo apt-get install ruby1.8-dev

на основе версии RUby.

Ответ 4

Я использую RVM, и у меня все время возникала эта проблема при установке драгоценных камней с родными расширениями (bcrypt-ruby, bson-ext, json, eventmachine, nokogiri, linecache19 и т.д.)

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

Единственный способ, которым я мог, наконец, начать работу, - это удалить, а затем снова установить ruby.

rvm remove 1.9.2

rvm install 1.9.2

Благодаря подсказке от @doublebee здесь: https://github.com/flori/json/issues/78#issuecomment-1499920

Ответ 5

Вам нужен только rvm (менеджер версий ruby)

rvm uninstall 1.9.3

а затем

rvm install 1.9.3

выглядит эта ошибка на сборке rvm 1.9.3, но удалить и переустановить исправить проблему с bcrypt-ruby 3.0.1

Ответ 6

sudo apt-get install ruby1.9.1-dev

проклятый шарм для меня! Большое спасибо

Ответ 7

Ну, он работает с Ruby 1.9.2 под RVM на MacOS 10.6.7:

$ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.6.0]

$ gem install bcrypt-ruby
Fetching: bcrypt-ruby-2.1.4.gem (100%)
Building native extensions.  This could take a while...
Successfully installed bcrypt-ruby-2.1.4
1 gem installed
Installing ri documentation for bcrypt-ruby-2.1.4...
Installing RDoc documentation for bcrypt-ruby-2.1.4...

Попробуйте rvm notes и посмотрите, говорит ли он, что вам нужно что-то установить.

Ответ 8

Если вы используете версию 1.8, требуемые пакеты для bcrypt находятся в пакете dev. Попробуйте использовать

$sudo apt-get install ruby1.8-dev

затем

$gem install bcrypt-ruby 

Ответ 9

Это исправление работает для меня на ubuntu на osx, используя homebrew, macports:

sudo apt-get install ruby1.9.1-dev

Ответ 10

Я думаю, вам нужно переустановить драгоценный камень отправителя.

gem install bundler а потом  bundle install