Почему я получаю ошибку установки 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 и все драгоценные камни.
Ответы
Ответ 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