2012-05-23 111 views
0

rvm安裝在32位上正常運行。輸出甚至使它看起來像被安裝YAML精細在OSX Lion上安裝RVM ruby​​-1.9.3-p125 32位後,Libyaml丟失

Kyles-MacBook-Air:~ kpeyton$ export rvm_archflags='-arch i386' 
Kyles-MacBook-Air:~ kpeyton$ export rvm_architectures='i386' 
Kyles-MacBook-Air:~ kpeyton$ export rvm_configure_flags=--target=i686-apple-darwin11 
Kyles-MacBook-Air:~ kpeyton$ rvm install ruby-1.9.3-p125 --32 --patch osx-arch-fix -n i386 
Fetching yaml-0.1.4.tar.gz to /Users/kpeyton/.rvm/archives 
Extracting yaml-0.1.4.tar.gz to /Users/kpeyton/.rvm/src 
Configuring yaml in /Users/kpeyton/.rvm/src/yaml-0.1.4. 
Compiling yaml in /Users/kpeyton/.rvm/src/yaml-0.1.4. 
Installing yaml to /Users/kpeyton/.rvm/usr 
Installing Ruby from source to: /Users/kpeyton/.rvm/rubies/ruby-1.9.3-p125-i386, this may take a while depending on your cpu(s)... 

ruby-1.9.3-p125-i386 - #fetching 
ruby-1.9.3-p125-i386 - #extracting ruby-1.9.3-p125 to /Users/kpeyton/.rvm/src/ruby-1.9.3-p125-i386 
ruby-1.9.3-p125-i386 - #extracted to /Users/kpeyton/.rvm/src/ruby-1.9.3-p125-i386 
Applying patch 'osx-arch-fix' (located at /Users/kpeyton/.rvm/patches/ruby/1.9.3/p125/osx-arch-fix.patch) 
Applying patch 'xcode-debugopt-fix-r34840' (located at /Users/kpeyton/.rvm/patches/ruby/1.9.3/p125/xcode-debugopt-fix-r34840.diff) 
ruby-1.9.3-p125-i386 - #autoreconf 
ruby-1.9.3-p125-i386 - #configuring 
ruby-1.9.3-p125-i386 - #compiling 
ruby-1.9.3-p125-i386 - #installing 
Removing old Rubygems files... 
Installing rubygems-1.8.24 for ruby-1.9.3-p125-i386 ... 
Installation of rubygems completed successfully. 
ruby-1.9.3-p125-i386 - adjusting #shebangs for (gem irb erb ri rdoc testrb rake). 
ruby-1.9.3-p125-i386 - #importing default gemsets (/Users/kpeyton/.rvm/gemsets/) 
Install of ruby-1.9.3-p125-i386 - #complete 

但是當我嘗試使用內部評級法,並要求「YAML」我得到libyaml沒有安裝錯誤:

Kyles-MacBook-Air:~ kpeyton$ rvm use ruby-1.9.3-p125-i386 
Using /Users/kpeyton/.rvm/gems/ruby-1.9.3-p125-i386 
Kyles-MacBook-Air:~ kpeyton$ irb 
1.9.3p125 :001 > require 'yaml' 
/Users/kpeyton/.rvm/rubies/ruby-1.9.3-p125-i386/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>': 
It seems your ruby installation is missing psych (for YAML output). 
To eliminate this warning, please install libyaml and reinstall your ruby. 
=> true 

誰能告訴我該怎麼辦?

+0

爲什麼不使用64位紅寶石/ libyaml:'室射頻$ rvm_path在/ usr; rvm重新安裝1.9.3 - 64' – mpapis

+0

我必須使用Oracle,因爲工作和oracle instantclient不能在64位Lion OSX上工作。 – weexpectedTHIS

+0

看看這個https://github.com/wayneeseguin/rvm/blob/master/scripts/functions/build#L66-L80 ...這是RVM之前使用的Ruby代碼1.8 ...但是Ruby 1.9爲架構引入了更簡單的交換機,但它們不適用於libyaml - 也許應該爲它添加新的東西 – mpapis

回答

1

使用

CONFIGURE_OPTS="--with-arch=i386" CFLAGS="-arch i386" LDFLAGS="-arch i386" rvm pkg install libyaml 

編譯libyaml 32位,然後重新安裝你的Ruby版本:

rvm reinstall ruby-1.9.3-p125-i386 -n i386 --with-arch=i386 
+0

您的答案似乎已解決了它不起作用的事實。不過,我仍然看到之前的警告信息。因此,部分解決方案,但無論如何,謝謝! – weexpectedTHIS