Cannot compile ruby 1.9.3

人走茶凉 提交于 2019-11-30 01:46:51
mpapis

you are using clang, according to this ticket http://bugs.ruby-lang.org/issues/5883 - it's not "fully" supported - you need to try using gcc-4.2, you get instructions for homebrew with running rvm requirements.

here is RVM ticket for this problem https://github.com/wayneeseguin/rvm/issues/1480

UPDATE: Ruby-2.0.0 actually compiles better with clang then with gcc-4.2, more details here: https://stackoverflow.com/a/15655034/497756

With Xcode 4.6 I was also getting this problem. I installed the command line tools which made gcc available in /usr/bin/gcc.

I managed to get it to work using:

rvm install 1.9.3 --with-gcc=gcc

NB. I dont have homebrew installed.

If you don't have rvm already installed, rvm requirements won't work. Install gcc 4.2 with homebrew and restart the rvm installation. Worked for me.

brew update
brew tap homebrew/dupes
brew install apple-gcc42

If you are using rbenv and ruby-build instead of rvm, you have to define, which compiler should be used to build ruby:

# this export must be done before every new ruby build
export CC=gcc
# use the version you wish to install
rbenv install 1.9.3-p385

If it doesn't work, you need to install Gnu C Compiler (gcc) first:

brew update
brew tap homebrew/dupes
# install gcc, only once needed
brew install gcc
# You can view the installed GCC version, currently gcc-8
brew info gcc
# Maybe you have to tell, which gcc version must be used,
# to get it working.
export CC=gcc-8

For older Systems or not up to date systems install old GCC 4.2 version:

brew update
brew tap homebrew/dupes
# install apple-gcc, only once needed
brew install apple-gcc42
# Maybe you have to tell, which gcc version must be used,
# to get it working on newer systems
export CC=gcc-4.2

Until the ruby folks build a clang compatible ruby version, you have to export the CC variable before every build of a new ruby version or simply add the export to your .bashrc oder .zshenv file.

I solved this using Macports.

I had problems compiling and were getting the error "Ruby 'ruby-1.9.3-p374' was built using clang - but it's not (fully) supported, expect errors."

Github was also down for maintenance so I couldnt try compiling using brew as suggested in the previous answer... This is what I did, and it compiled fine on Mountain Lion 10.8.2:

First install Macports

http://www.macports.org/install.php

Then run:

sudo port selfupdate

sudo port install apple-gcc42

sudo rvm install ruby-1.9.3-p374 --with-gcc=gcc-apple-4.2

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!