在Mac OS X 10.7.5上使用RVM安装Ruby 1.9.3 - C编译器无法创建可执行文件

时间:2012-12-06 00:22:16

标签: ruby gcc rvm

我了解到很多人遇到了类似的问题,我尝试过在stackoverflow和其他地方发布的许多建议(包括:Can't install Ruby under Lion with RVM – GCC issues)。已经很久了(我是新手)。

我有gcc-4.2。我使用osx-gcc-installer获得4.2。

zach$ find /usr/bin -name "*gcc *"  
/usr/bin/gcc  
/usr/bin/gcc-4.2  
/usr/bin/i686-apple-darwin11-gcc-4.2.1  
/usr/bin/i686-apple-darwin11-llvm-gcc-4.2  
/usr/bin/llvm-gcc  
/usr/bin/llvm-gcc-4.2  

我尝试过:CC=/usr/local/bin/gcc-4.2 rvm install 1.9.3 --enable-sharedrvm install 1.9.3 --with-gcc=clang

终端错误消息:

No binary rubies available for: downloads/ruby-1.9.3-p327.
Continuing with compilation. Please read 'rvm mount' to get more information on binary rubies.
Fetching yaml-0.1.4.tar.gz to /Users/zach/.rvm/archives
Extracting yaml to /Users/zach/.rvm/src/yaml-0.1.4
Configuring yaml in /Users/zach/.rvm/src/yaml-0.1.4.
Error running 'env LDFLAGS=-L/opt/sm/pkg/active/lib CFLAGS=-I/opt/sm/pkg/active/include     CPATH=/opt/sm/pkg/active/include ./configure --prefix=/Users/zach/.rvm/usr', please read /Users/zach/.rvm/log/ruby-1.9.3-p327/yaml/configure.log
Compiling yaml in /Users/zach/.rvm/src/yaml-0.1.4.
Error running 'make', please read /Users/zach/.rvm/log/ruby-1.9.3-p327/yaml/make.log
Installing Ruby from source to: /Users/zach/.rvm/rubies/ruby-1.9.3-p327, this may take a     while depending on your cpu(s)...
ruby-1.9.3-p327 - #downloading ruby-1.9.3-p327, this may take a while depending on your     connection...
ruby-1.9.3-p327 - #extracted to /Users/zach/.rvm/src/ruby-1.9.3-p327 (already extracted)
ruby-1.9.3-p327 - #configuring
Error running 'env LDFLAGS=-L/opt/sm/pkg/active/lib CFLAGS=-I/opt/sm/pkg/active/include     CPATH=/opt/sm/pkg/active/include ./configure --enable-shared --disable-install-doc --    prefix=/Users/zach/.rvm/rubies/ruby-1.9.3-p327 --with-opt-dir=/Users/zach/.rvm/usr', please     read /Users/zach/.rvm/log/ruby-1.9.3-p327/configure.log
There has been an error while running configure. Halting the installation.

configure.log:

[2012-12-05 16:13:05] env LDFLAGS=-L/opt/sm/pkg/active/lib CFLAGS=-I/opt/sm/pkg/active/include CPATH=/opt/sm/pkg/active/include ./configure --    prefix=/Users/zach/.rvm/usr
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... config/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc-4.2
checking whether the C compiler works... no
configure: error: in `/Users/zach/.rvm/src/yaml-0.1.4':
configure: error: C compiler cannot create executables

有关详细信息,请参阅`config.log'

来自config.log:

configure:2947: checking for gcc
configure:2974: result: gcc-4.2
configure:3203: checking for C compiler version
configure:3212: gcc-4.2 --version >&5
i686-apple-darwin11-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)

检查链接:

zach$ ls -la /usr/bin | grep gcc
lrwxr-xr-x     1 root        wheel         7 Dec  5 14:24 cc -> gcc-4.2
lrwxr-xr-x     1 root        wheel         7 Dec  5 14:15 gcc -> gcc-4.2
-rwxr-xr-x     1 root        wheel    113024 May 15  2011 gcc-4.2
-rwxr-xr-x     1 root        wheel    562992 May 15  2011 i686-apple-darwin11-gcc-4.2.1
lrwxr-xr-x     1 taylozac85  admin        52 Dec  3 21:44 i686-apple-darwin11-llvm-g++-4.2 
-> ../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-g++-4.2
lrwxr-xr-x     1 taylozac85  admin        52 Dec  3 21:44 i686-apple-darwin11-llvm-gcc-4.2
 -> ../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2
lrwxr-xr-x     1 taylozac85  admin        32 Dec  3 21:44 llvm-cpp-4.2 -> ../llvm-gcc-
4.2/bin/llvm-cpp-4.2
lrwxr-xr-x     1 taylozac85  admin        32 Dec  3 21:44 llvm-g++ -> ../llvm-gcc-
4.2/bin/llvm-g++-4.2
lrwxr-xr-x     1 taylozac85  admin        32 Dec  3 21:44 llvm-g++-4.2 -> ../llvm-gcc-4.2/bin/llvm-g++-4.2
lrwxr-xr-x     1 taylozac85  admin        32 Dec  3 21:44 llvm-gcc -> ../llvm-gcc-4.2/bin/llvm-gcc-4.2
lrwxr-xr-x     1 taylozac85  admin        32 Dec  3 21:44 llvm-gcc-4.2 -> ../llvm-gcc-4.2/bin/llvm-gcc-4.2

任何建议都非常感谢。感谢。

2 个答案:

答案 0 :(得分:3)

看起来像https://github.com/railsinstaller/railsinstaller-nix/issues/10

最简单的方法是修改/etc/rvmrc并将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')

答案 1 :(得分:0)

您是否在Xcode中安装了命令行工具,使用ls -la /usr/bin | grep gcc检查您的gcc是否与您的llvm-gcc相关联