在山狮上安装 Ruby 时出现问题 - Ruby 1.9.3 无法编译



我以前曾在此上看到过许多帖子,并且遵循了他们的说明,但没有任何作用。我将在下面概述我所做的工作以及所遵循的说明 - 对任何建议都表示感谢!

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

我已经为OSX Mountain Lion下载了X代码,并安装了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 <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [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兼委员会(GCC?)有一个问题,我在正确解释吗?如果是这样,我该如何解决?另外,我如何获得上面configure.log中提到的" config.log"?

谢谢!

这是Railsinstaller OSX 1.0.3- https://github.com/railsinstaller/railsinstaller-nix/sissues/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爆炸),然后重新安装它( curl -l -l -l https://get.rvm.io |bash -s稳定-ruby)并已安装,现在正在运行最新版本的Ruby 1.9.3 -P327没问题。

最新更新