2011-05-25 95 views
31

嘗試安裝寶石器件時得到一個錯誤,安裝停止在 寶石bcrypt-紅寶石:爲什麼我會得到一個bcrypt-ruby gem安裝錯誤?

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

我下RVM運行OSX 10.6.7使用Ruby。 我重新安裝了最新版本的xcode &,重新安裝了Ruby 64bit,Rails和所有寶石。

回答

1

那麼,它使用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,看看它說,你需要安裝任何東西。

1

如果您使用的是1.8版本,則所需的bcrypt軟件包位於開發包中。嘗試使用

$sudo apt-get install ruby1.8-dev 

然後

$gem install bcrypt-ruby 
+0

的問題是關於OSX。 – yfeldblum 2011-10-04 19:14:42

2

我使用RVM &我一直有與時本地擴展安裝寶石(這個問題bcrypt-紅寶石,BSON-EXT,JSON,EventMachine的,引入nokogiri,linecache19等)

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

只有這樣我終於可以把事情的工作是卸載後重新安裝紅寶石。

rvm remove 1.9.2

rvm install 1.9.2

由於從這裏@doublebee提示: https://github.com/flori/json/issues/78#issuecomment-1499920

31

我不得不下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 

看起來像寶石正在尋找GCC-4.2,但我只有一個名爲GCC的文件。現在,由於我剛剛安裝了最新的Xcode(4.3),我知道我的C編譯器是兼容的,但該Gem已將gcc-4.2硬編碼到其中。所以我的解決方案是:

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

鏈接工作就像一個魅力。

+0

你在文件系統中的哪個位置運行ln -s命令? – roborourke 2012-09-08 18:46:56

+0

如此明顯,很好的答案! – thatmiddleway 2012-12-21 05:56:41

4

它需要在安裝bcrypt-ruby之前安裝ruby-dev。 如果您在使用Ubuntu,運行

sudo apt-get install ruby1.9.1-dev 

sudo apt-get install ruby1.8-dev 

基於Ruby版本。

6

看起來像可能有一些信息在這裏丟失 - 對我來說,這是由於gcc的brew安裝。 gcc在/ usr/bin中,但不是gcc-4.2。所以,我只是做了以下內容:

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

它創建了一個鏈接,gcc-4.2,其中創業板正在尋找可以追溯到gcc

希望有所幫助。

2

你只需要使用RVM(紅寶石版本管理器)

rvm uninstall 1.9.3 

然後

rvm install 1.9.3 

看起來這個錯誤是RVM 1.9.3的身材,但卸載並重新安裝解決的問題bcrypt-ruby 3.0.1

0

這個修復工作適用於我在Ubuntu上的osx使用自制軟件,macports whatever:

sudo apt-get install ruby1.9.1-dev 
2

命令和apt-get安裝ruby1.9.1-dev的

whoked魅力對我來說!非常感謝

0

我認爲你需要重新安裝捆綁軟件寶石。

gem install bundler 然後 bundle install