在Mountain Lion上安装Ruby的问题 – ruby​​ 1.9.3不会编译

我之前看过很多关于此的post,并且已经遵循了他们的指示,但没有任何工作。 我将在下面概述我所做的事情,以及我所遵循的指示 – 对任何建议都会感激不尽!

我遵循了以下安装说明: http : //pragmaticstudio.com/blog/2010/9/23/install-rails-ruby-mac

我已经下载了OSX Mountain Lion的X-code,并安装了gcc编译器:

$ gcc --version i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00) Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

然后我按照指示完成并安装了最新版本的git

 $ git --version git version 1.7.10.2 (Apple Git-33) 

并通过命令行类似地使用rvm完成相同的操作:

 $ rvm --version rvm 1.16.13 (stable) by Wayne E. Seguin , Michal Papis  [https://rvm.io/] 

当我尝试使用RVM安装ruby时,我得到以下内容:

 $ rvm install 1.9.3 No binary rubies available for: osx/10.8/x86_64/ruby-1.9.3-p286. Continuing with compilation. Please read 'rvm mount' to get more information on binary rubies. Installing Ruby from source to: /Users/mondemoo/.rvm/rubies/ruby-1.9.3-p286, this may take a while depending on your cpu(s)... ruby-1.9.3-p286 - #downloading ruby-1.9.3-p286, this may take a while depending on your connection... ruby-1.9.3-p286 - #extracted to /Users/mondemoo/.rvm/src/ruby-1.9.3-p286 (already extracted) ruby-1.9.3-p286 - #configuring Error running 'env LDFLAGS=-L/opt/sm/pkg/active/lib CFLAGS=-I/opt/sm/pkg/active/include CPATH=/opt/sm/pkg/active/include -L/Users/mondemoo/.rvm/usr/lib ./configure --enable-shared --disable-install-doc --prefix=/Users/mondemoo/.rvm/rubies/ruby-1.9.3-p286', please read /Users/mondemoo/.rvm/log/ruby-1.9.3-p286/configure.log There has been an error while running configure. Halting the installation. 

使用备用命令行,虽然带有一些额外的位,但我得到了类似的输出:

 $ rvm install 1.9.3 --with-gcc=clang -bash: -dumpversion: command not found -bash: --version: command not found -bash: --version: command not found Installing Ruby from source to: /Users/mondemoo/.rvm/rubies/ruby-1.9.3-p286, this may take a while depending on your cpu(s)... ruby-1.9.3-p286 - #downloading ruby-1.9.3-p286, this may take a while depending on your connection... ruby-1.9.3-p286 - #extracted to /Users/mondemoo/.rvm/src/ruby-1.9.3-p286 (already extracted) ruby-1.9.3-p286 - #configuring Error running 'env LDFLAGS=-L/opt/sm/pkg/active/lib CFLAGS=-I/opt/sm/pkg/active/include CPATH=/opt/sm/pkg/active/include -L/Users/mondemoo/.rvm/usr/lib ./configure --enable-shared --disable-install-doc --prefix=/Users/mondemoo/.rvm/rubies/ruby-1.9.3-p286 --with-gcc=clang', please read /Users/mondemoo/.rvm/log/ruby-1.9.3-p286/configure.log There has been an error while running configure. Halting the installation. -bash: --version: command not found 

查看configure.logs,我得到以下内容:

 $ less /Users/mondemoo/.rvm/log/ruby-1.9.3-p286/configure.log [2012-10-17 07:39:15] env LDFLAGS=-L/opt/sm/pkg/active/lib CFLAGS=-I/opt/sm/pkg/active/include CPATH=/opt/sm/pkg/active/include -L/Users/mondemoo/.rvm/usr/lib ./configure --enable-shared --disable-install-doc --prefix=/Users/mondemoo/.rvm/rubies/ruby-1.9.3-p286 --with-gcc=clang checking build system type... x86_64-apple-darwin12.2.0 checking host system type... x86_64-apple-darwin12.2.0 checking target system type... x86_64-apple-darwin12.2.0 checking whether the C compiler works... no configure: error: in `/Users/mondemoo/.rvm/src/ruby-1.9.3-p286': configure: error: C compiler cannot create executables See `config.log' for more details 

我现在对我做错了什么感到困惑 – 是否有人能够提供帮助? 看来c-compiler(gcc?)存在问题,我是否正确地解释了它? 如果是这样,我该如何解决? 另外,我如何获得上面的configure.log中提到的“config.log”?

谢谢!

这是RailsInstaller OSX 1.0.3中的一个错误 – https://github.com/railsinstaller/railsinstaller-nix/issues/10

你需要改变/etc/rvmrc来包含这个:

 umask g+w export -a rvm_configure_env rvm_configure_env=('LDFLAGS=-L/opt/sm/pkg/active/lib' 'CFLAGS=-I/opt/sm/pkg/active/include' 'CPATH=/opt/sm/pkg/active/include') 

当二进制ruby可用于2.0.0时,我将准备新版本的安装程序。

更新:对于新版本的RVM 1.19+ /etc/rvmrc应更改为:

 umask g+w export rvm_autolibs_flag=smf 

然后运行rvm get stabel #OR: head

不确定我是以’正确’方式做到的,但我刚刚删除了RVM(rvm implode)然后重新安装它(\ curl -L https://get.rvm.io | bash -s stable –ruby)并安装了它现在运行最新版本的ruby 1.9.3-p327没问题。