2012-11-25 199 views
2

我想安裝紅寶石寶石「yajl紅寶石」。我運行Mac OS 10.7.4和Ruby 1.8.7(2011-12-28 patchlevel 357)[universal-darwin11.0]。當我運行:未能安裝紅寶石「yajl紅寶石」

sudo gem install yajl-ruby 

我得到以下輸出:

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

     /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb 
creating Makefile 

make 
gcc -I. - I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin11.0  -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin11.0  -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -arch i386 -arch x86_64 -g -Os -pipe - fno-common -DENABLE_DTRACE -fno-common -pipe -fno-common -Wall -funroll-loops -c yajl.c 
make: gcc: No such file or directory 
make: *** [yajl.o] Error 1 


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/yajl-ruby-1.1.0 for  inspection. 
Results logged to /Library/Ruby/Gems/1.8/gems/yajl-ruby-1.1.0/ext/yajl/gem_make.out 

我需要什麼,以使安裝工作要做?

回答

0

這是一個有點迂迴,但你有沒有考慮過使用RVM來管理你的Ruby版本?因爲這是你在OS X機器上的工作,我假設它是你的開發機器,所以擁有系統級的寶石可能不是什麼大不了的事情。 RVM將安裝gems的路徑更改爲相對於正在使用的Ruby版本,因爲路徑對於用戶目錄是本地的,所以不需要使用sudo,從而避免潛在的許可錯誤,這是我懷疑在這裏發生的。

我說我懷疑,因爲丟失的文件表明,一些沒有被寫入到它的預期是它是一個權限錯誤。不過這只是黑暗中的一個鏡頭。或者,你可以嘗試真正的su'ing,並在那裏做寶石安裝,但這很醜陋。

0

我有一個類似的錯誤安裝yajl-ruby。

錯誤是/ Developer/usr/bin不可用。做一個「ls -s /Applications/Xcode.app/Contents/Developer/usr//Developer/usr」修復了這個錯誤。

下面是具體的錯誤我看到:

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

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb 
creating Makefile 

make 
xcrun cc -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin11.0 -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin11.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -arch i386 -arch x86_64 -g -Os -pipe -fno-common -DENABLE_DTRACE -fno-common -pipe -fno-common -Wall -funroll-loops -c yajl.c 
sh: /Developer/usr/bin/xcodebuild: No such file or directory 
/Developer/usr/bin/xcodebuild fails with 32512 - Unknown error: 32512 
make: *** [yajl.o] Error 69 


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/yajl-ruby-1.1.0 for inspection. 
Results logged to /Library/Ruby/Gems/1.8/gems/yajl-ruby-1.1.0/ext/yajl/gem_make.out 
1

試試這個:

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

+0

LN:/usr/bin/gcc-4.2:不允許操作 – poramo