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

При попытке установить gem devine появляется ошибка, установка останавливается на 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 и все гемы.

Ответы [ 10 ]

30 голосов
/ 07 марта 2012

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

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 был совместим, но в гем был встроен gcc-4.2.Таким образом, мое решение было:

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

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

6 голосов
/ 06 сентября 2012

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

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

, которая создает ссылку, gcc-4.2, которую ищет камень, возвращаясь к gcc.

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

5 голосов
/ 28 июля 2012

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

sudo apt-get install ruby1.9.1-dev

или

sudo apt-get install ruby1.8-dev

в зависимости от версии RUby.

2 голосов
/ 21 апреля 2013

sudo apt-get install ruby1.9.1-dev

мне нравится!Большое спасибо

2 голосов
/ 05 февраля 2013

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

rvm uninstall 1.9.3

, а затем

rvm install 1.9.3

похоже, эта ошибка возникает при сборке rvm 1.9.3, но удаление и повторная установка решают проблему с bcrypt-ruby 3.0.1

2 голосов
/ 08 декабря 2011

Я использую 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

1 голос
/ 04 октября 2011

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

$sudo apt-get install ruby1.8-dev

затем

$gem install bcrypt-ruby 
1 голос
/ 25 мая 2011

Ну, это работает с 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 и посмотрите, говорит ли вам, что вам нужно что-то установить.

0 голосов
/ 20 января 2017

Я думаю, вам нужно переустановить гем компоновщика.

gem install bundler а потом bundle install

0 голосов
/ 05 апреля 2013

Это исправление работает для меня на Ubuntu на OSX, использующем homebrew, macports в любом случае:

sudo apt-get install ruby1.9.1-dev
...