Why can't I install Rails on Lion using RVM? - ruby-on-rails

I'm running into issues trying to install Rails on OS X Lion using RVM.
So far, I have done the following:
Installed Mac OS X Lion Version 10.7 (Build 11A459e).
Installed XCode 4.1 Developer Preview 5.
Installed RVM.
Installed a 1.8.7 version of Ruby via RVM using the command rvm install 1.8.7. Note: I need to be using 1.8.7 and not 1.9.2.
Switched to the 1.8.7 version of Ruby using the command rvm 1.8.7.
Created a new gemset using the command rvm gemset create rails3.
Switched to the new gemset using the command rvm use 1.8.7#rails3.
To install Rails I ran the command gem install rails but I got the following error:
/Users/m/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/timeout.rb:60: [BUG] Segmentation fault
The same error happens when trying to run any gem command so I don't think it's really a problem with Rails.
Judging by the links below, I don't seem to be the only person having this issue:
http://twitter.com/#!/pingles/status/66261101351927809
and https://github.com/carlhuda/bundler/issues/1058

Fixed it!
The answer was actually on one of the links I posted above. Before installing a version of ruby (rvm install 1.8.7) I needed to run "export CC=/usr/bin/gcc-4.2". With that in place, everything ran smoothly.
If you don't want to have CC permanently exported, you can do CC=/usr/bin/gcc-4.2 rvm install 1.8.7
If you have already installed ruby 1.8.7. Just do CC=/usr/bin/gcc-4.2 rvm reinstall 1.8.7

If you have installed Xcode 4.2, it actually doesn't install non-LLVM gcc anymore, so you have to add it. For some reason downgrading to 4.1 after you've installed 4.2 doesn't work correctly (at least it didn't for me and others have had similar issues).
After quite a bit of thrashing, this is what finally worked for me:
Install Xcode 4.2 from App Store
Install darwin gcc using the OSX gcc installer
Install REE making sure you remove any vestiges of previous attempts:
Close any open terminal windows, open a fresh one and
rvm remove ree
export CC=/usr/bin/gcc-4.2
rvm install ree
This worked for me with rvm 1.8.6, OS X 10.7.2 and gcc-4.2 version 4.2.1 (Apple build 5666).
If you have already installed Xcode 4.1, resist the urge to upgrade to 4.2 and you should be okay.

If that still doesn't work add --force.
So this becomes:
CC=/usr/bin/gcc-4.2 rvm install ruby-1.8.7 --force

Make sure that you remove 1.8.7 if you already installed it before using "export CC=/usr/bin/gcc-4.2" by doing "rvm remove 1.8.7"

I had the same issue on my system. I installed the Xcode command line tools from Apple which ships with LLVM compiler and without an LLVM free one.
Ruby 1.8.7 won't work with an LLVM compiler not even with CC=clang, so installing an LLVM free gcc solves the problem.
There are multiple options listed here:
https://github.com/mxcl/homebrew/wiki/Custom-GCC-and-cross-compilers
Long story short, install GCC v4.2 with Homebrew:
brew install https://raw.github.com/Homebrew/homebrew-dupes/master/apple-gcc42.rb
and then install ruby 1.8.7:
CC=gcc-4.2 rvm install 1.8.7

Instead of "export CC=/usr/bin/gcc-4.2" do "export CC=gcc" (xCode 4.2.x should be installed).

Check which version of gcc you have like this:
ls -Al `which gcc-4.2`
I followed the instructions here:
http://robots.thoughtbot.com/post/27985816073/the-hitchhikers-guide-to-riding-a-mountain-lion
brew update
brew tap homebrew/dupes
brew install apple-gcc42
Then reinstall:
Check again what your path to gcc is (to use for CC=):
ls -Al `which gcc-4.2`
(optional) You can set this in your .bashrc for example:
export CC=/usr/bin/gcc-4.2
(optional) remove any old version of ruby
rvm remove 1.8.7
Then:
CC=/usr/local/bin/gcc-4.2 rvm --verify-downloads 1 reinstall 1.8.7-p357 --without-tcl --without-tk
or if you have set CC in your profile
rvm --verify-downloads 1 reinstall 1.8.7-p357 --without-tcl --without-tk
Note the flags on the rvm install. I had trouble verifying the checksum on the ftp server and some problems with tck and what not. You may be able to omit those flags.
Also: you might need to remove an old version of your gemset:
rvm gemset delete <gemset>
Then
gem install bundler
bundle install
Hope this helps.

Using macport and ruby-1.9.x version.
I did successfully install rails with ruby gem.

I have same problem only for arch x86_64, when I comment line in my ~/.rvmrc
rvm_archflags="-arch x86_64"
Open a new terminal and tried to install ruby-1.8.7 again
rvm install 1.8.7
It was successful.

If you're using RVM in a development workflow, I added a fix in an .rvmrc file for OS X Lion.
https://gist.github.com/1112962
(updated file name)

This is not related to RVM, but if what you are looking for is a local development environment for Lion you may want to give a try to RubyStack It is a free, open source all-in-one installer for Apache, MySQL, Ruby, Rails, etc. It does not require compilation and it is self-contained so if you do not like it you can simply remove the installation directory and you are done. Disclaimer: I'm one of the RubyStack developers :)

CC=/usr/bin/gcc-4.2 rvm install 1.8.7 did not work for me, I used CC=/usr/bin/gcc rvm install 1.8.7 and it did (checking with "which gcc")

Even with all the other suggestions on this page I was still getting segfaults and getting frustrated, so I said "screw it!" and use the system-provided Ruby 1.8.7:
rvm use system
You need to use sudo for installing gems, but still waay less headache.

My solution was to override the /usr/bin/gcc symlink in the terminal. Here's how I did it:
https://plus.google.com/101970693023462019144/posts/eYVLvMCqTmc
This not only fixed my RVM installation, but also made sure that installing gems with native extensions (like rmagick) work.

Related

Uninstall Ruby, rbenv and homebrew and reinstall Ruby on Rails with RVM on MAC

I'm very new to RoR specially on Mac. I have installed it many times on Ubuntu with RVM and I'm very comfortable with that. Here is what happened on Mac:
I went through instructions as explained here http://goo.gl/zsHcCC then when I got to the point to install Rails with " gem install rails " I got this error:
Error installing rails:
ERROR: Failed to build gem native extension.
Now I want to roll-back everything and uninstall rbenv and it's ruby versions and reinstall the Ruby On Rails environment using RVM.
I tried to find how to uninstall Homebrew, RBENV and Ruby, but no success.
Thank you.
Sia
Homebrew or Rbenv are very good tools to have as a dev, I would think twice before removing either.
In this case I doubt they are at fault.
Can you confirm you have installed the GCC command line utils for OSX by running $ xcode-select --install in your terminal.
Here is a useful post explaining that process but I find that command generally works fine for me.
If this succeeds what does your $ gem install rails output next?
If you are very new you and you don't need specially the last version of Ruby. You can use Rails Installer http://railsinstaller.org/fr-FR.
To uninstall brew https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/FAQ.md

RoR: Could not load OpenSSL (after Apple's Bash fix today)

Hoping someone can help explain and or advise me on this error I'm catching after i tried to re-install rails via rvm after running Apple's bash shellshock fix today.
I upgraded to OSX 10.9.5 mav and ran the Bash Shellshock, then my RoR apps needed rails re-installed. When I try to bundle install I get the following:
Could not load OpenSSL.
You must recompile Ruby with OpenSSL support or change the sources in your Gemfile from 'https' to 'http'. Instructions for
compiling with OpenSSL using RVM are available at rvm.io/packages/openssl.
Remove the Ruby version you installed with RVM
$ rvm remove ruby-2.1.2
and reinstall it
$ rvm install ruby-2.1.2

How to use RVM to install Ruby 1.9.3 when Xcode 4.3.2 is installed and gcc is missing?

I got a new iMac with Lion and installed Xcode 4.3.2. After running
curl -L get.rvm.io | bash -s stable
I opened up a new bash, and used
$ rvm install 1.9.3
to install Ruby 1.9.3, but there were errors and the log said that the C compiler is not there. And rvm requirements says:
$ rvm requirements
[...]
Xcode 4.3+ users
- please be warned
- only ruby-1.9.3-p125+ is partially supported
- in case of any compilation issues:
* downgrade to Xcode 4.1
* uninstall Xcode and install osx-gcc-installer
and reinstall your rubies.
So does that mean I might need to downgrade to Xcode 4.1? What if I want to keep Xcode 4.3.2? Then will 1.9.3-p125+ be able to work, but only partially?
Update: or how about installing Ruby 1.9.2 -- will it work with the latest Rails 3.2.3? If so, how to add gcc? (using Xcode's gcc?)
To install 1.9.2 or lower you need to follow the instructions in this blog post. It outlines how it get a copy of GCC which does not conflict with Xcode but can be used to build Ruby.
Xcode 4.3, Homebrew and Ruby.
You cannot install the osx-gcc-installer as it will conflict with Xcode 4.3.2, overwriting the working versions of llvm-gcc and clang.
install osx-gcc-installer
use latest ruby:
rvm install ruby
it will be 1.9.3-p125 as it's latest ruby

How can I install ruby on rails with rvm?

I've been searching around on how to install it through the terminal on my mac. I'm using snow leopard.
When I use the command: rvm install 1.9.3
I've also followed the other procedures that led me up to this to install, right now the current version is 1.8.3
Error running './configure --prefix="/Users/jose/.rvm/usr" ', please read /Users/jose/.rvm/log/ruby-1.9.3-p125/yaml/configure.log
Then it mentions something about xcode and autoreconf was not found in the PATH.
Error running 'patch -F 25 -p1 -N -f <"/Users/jose/.rvm/patches/ruby/1.9.3/p125/xcode-debugopt-fix-e34840.diff"',please read /Users/jose/.rvm/log/ruby-1.9.3-p125/patch.apply.xcode-debugopt-fix-r34840.log
rvm requires autoreconf to install the selected ruby interpreter however autoreconf was not found in the PATH
I been trying for awhile now, and found out i need to have Xcode for snow leopard which I cannot find. So my last option will be to upgrade to lion but I don't know about upgrading. Kind of scared to upgrade and everything becomes buggy.
Rails 2.3.5
Jose-Gomezs-MacBook-Pro:~ josegomez$ ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
Jose-Gomezs-MacBook-Pro:~ josegomez$ gem -v
1.8.15
Jose-Gomezs-MacBook-Pro:~ josegomez$ rvm -v
rvm 1.11.6 (stable) by Wayne E. Seguin , Michal Papis > [https://rvm.beginrescueend.com/]
Install brew, then:
brew install automake
Will add autoreconf to your path.
1.9.3 now works with the LLVM compiler in XCode 4.3 so you shouldn't have any issues installing the latest version from the App Store.
I rebuilt my mac last night and everything was pretty stock standard. RVM, Brew, XCode from the App Store, Command Line Tools from XCode, autoreconf from brew, 1.9.3-p125 from rvm.
For getting patch application problems - use rvm reinstall 1.9.3.
For installing ruby 1.8.7 you need GCC 4.2 like (gcc-4.2 program) not an LLVM based compiler (like clang), the easiest way to get it is osx-gcc-installer, you could also install Xcode 4.1 - but this is harder.
Please take a note that 1.9.3-p125 is not fully ready for clang, you still are better with gcc-4.2 form osx-gcc-installer / Xcode 4.1
I did it on my Mac and I remember changing some settings in my .bash_profile. Here is a link I followed to do it. Hope it works for you as well.
http://net.tutsplus.com/tutorials/ruby/how-to-install-ruby-on-a-mac/
Signing up for a free developer account with Apple will give you access to Xcode for Snow Leopard. Once you install Xcode and the included Developer Tools, you'll be all set to install Ruby on Rails with RVM.
only tittle related:
bash -s stable --rails < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
you can get more details here: https://gist.github.com/2246595 - this will enter guide mode that helps to get it app and running
Try this script by ThoughtBot to automatically configure your system:
https://github.com/thoughtbot/laptop
It does a.lot and generally will take a Lion system, get gcc installed, and get rvm and finally rails. highly recommend.
Just to close it off, I found out I had to push back my date on my mac to sometime before January 2012 and install xcode. After installation you can set the time back to normal and you should be good to go. But I got a copy of xcode from my instructor which is pretty cool.

Installing Gems under RVM Error

I just purchased my first Mac, a 13" Air with Lion, and am coming from Linux. I'm installed RVM and my first Ruby (1.8.6), but I can't get a gem to install. Here's the input:
Ryan's Air :sudo gem install rails --version 2.0.2
Password:********
and the result:
/usr/local/rvm/rubies/ruby-1.8.6-p420/lib/ruby/1.8/timeout.rb:59: [BUG] Bus Error
ruby 1.8.6 (2010-09-02) [i686-darwin11.2.0]
Ryan's Air :
Thanks in advance for any help on this.
Ryan
The issue is with Lion, and I've encountered this myself on now 2 brand-new 13-inch MBP's.
What you need to do is install the OSX GCC Compilers separately.
They can be found here: https://github.com/kennethreitz/osx-gcc-installer (scroll down to downloading pre-build binaries)
After downloading and running through the package installer (you should not need to install Homebrew), you need to find where the GCC folder is located. For some people, it was in /usr/bin; however, for me I found it in /Developer/usr/bin
Add this directory to your $PATH variable in your ~/.profile or ~/.bash_profile file. For me, I'm using ~/.bash_profile and added it to the end using vim.
Close your Terminal and open it again, and then echo $PATH to make sure the changes saved.
Completely uninstall that version of ruby, and install again normally:
rvm install 1.8.7
rvm use 1.8.7
If it still doesn't work, I recommend installing your version of rails using the following command as Hans specified in Why can't I install Rails on Lion using RVM?:
CC=/usr/bin/gcc-4.2 rvm install ruby-1.8.7 --force
the CC directory would change based on where your install was. However, after adding the correct path to gcc to my $PATH variable, I did not need to do the above command.
If you were still having this problem, hope this helps.
Look at this article. It seems that you get deadlocks with your combination of old rails, sqlite and Webrick. Michael is right, try to use modern version of rails.
rvm install 1.8.7-head
This worked for me, everything else failed. I did not install the gcc specifically, just clean Xcode 4.2

Resources