4

I'm trying to use rvm to install Ruby 1.9.2 on my Mac running Snow Leopard.

My .bash_profile contains

ARCHFLAGS="-arch x86_64"

To install ruby, I run:

rvm install 1.9.2 -C --enable-shared

I get an error during compiling. Here is the make.error.log:

[2010-01-20 10:03:00] make 
ld: in /usr/local/lib/libxml2.2.dylib, file is not of required architecture
collect2: ld returned 1 exit status
make[1]: *** [../../.ext/i386-darwin10.2.0/tcltklib.bundle] Error 1
make: *** [mkmain.sh] Error 1

EDIT:

I installed readline from source and tried the install like this:

rvm install 1.9.2 -C --enable-shared,--with-readline-dir=/usr/local 

which resulted in the same error as before.

The locations of the rcltklib.bundle file is:

/usr/local/lib/ruby/1.8/i686-darwin9.7.0/tcltklib.bundle  

(I think this file is part of the Ruby OSX installation)

BryanH
  • 5,826
  • 3
  • 34
  • 47
Jonas
  • 956
  • 6
  • 12

2 Answers2

7

Now, finally I figured it out.
I did install ruby 1.8.7 from rubyosx and there seemed to be some broken libraries, which rvm used to compile its rubies.

The solution is to remove the rubyosx ruby from /usr/local.

The less drastic solution is to just rename the /usr/local folder during compiling with rvm. Afterwards you can name it back and it works as expected.

Glad it works now.

Jonas
  • 956
  • 6
  • 12
0

You are setting ARCHFLAGS to two different architectures. Why? Try with only -arch -x86_64 (which as far as I know, is the default in snow leopard).

hgmnz
  • 13,208
  • 4
  • 37
  • 41
  • Thanks for the hint. Copied this line somewhere, but the i386 seems in fact unnecessary. Didn't solve the problem though. – Jonas Jan 20 '10 at 15:03
  • OK. For me it "just works" on snow leopard. Next thing to make sure is that you have all the latest and greatest xCode http://developer.apple.com/tools/xcode/ – hgmnz Jan 20 '10 at 18:29