我在Lion上,我安装了xcode 4.1,rvm版本是1.6.31头
这就是我的所作所为:
$ rvm install 1.9.2-p290 --with-iconv-dir=/usr/local/Cellar/libiconv/1.13.1
iconv dir指向Brew安装。
make.log底部的错误看起来像是在尝试使用本机libiconv而不是我指定的那个:
ld: in /Developer/SDKs/MacOSX10.7.sdk/usr/local/lib/libiconv.2.dylib, file was built for unsupported file format which is not the architecture being linked (x86_64) for architecture x86_64
有什么想法吗?
答案 0 :(得分:2)
当从10.5升级到10.6时,我必须完成所有已安装的源代码库,然后重新开始完全解决32位到64位的转换问题。您可能会发现需要强制重建所有brew包。
在MacPorts下,您只需删除/opt
目录,抢救可能首先存在的所有数据库文件,然后重新安装所有内容。我确信Brew的程序类似。
有一种方法可以改变库加载路径,以设置优先级,但MacPorts似乎确实为您处理了这个问题。 otool
可以帮助诊断正在加载的库:
otool -L `which ruby`
答案 1 :(得分:2)
删除RVM,以便以后更清洁地安装:
$ RVM implode
删除XCode:
$ sudo / Developer / Library / uninstall-devtools -mode = all
XCode被删除,因为在4.2中,至少所有对gcc的引用都链接到llvm-gcc(Apple)自己的gcc分支。 llvm不会编译ruby。
(以后可以随时从AppStore重新安装)
这将只安装简单的GCC编译器。如果您决定重新安装它,或者使用与删除XCode相同的命令进行简单删除,则XCode可以安全地覆盖它。
从http://mxcl.github.com/homebrew/安装软件包管理器“homebrew”并安装libiconv。
$ brew install libiconv
这会将几个文件安装到homebrew的主目录“/ usr / local / cellar”
此时你应该已经准备好使用RVM安装ruby 1.9.2:
CC=gcc-4.2 rvm install 1.9.2-p290 --with-iconv-dir=/usr/local/Cellar/libiconv/1.14.1
(RVM实际上不支持--with-iconv-dir,如果你检查config.log文件,但它可能有一天......在这种情况下,复制libiconv将是不必要的)
现在去安装gems and rails以及其他你可能需要的东西。
答案 2 :(得分:0)
Ruby不会与llvm一起安装,而gcc现在与sym链接到llvm。简单的解决方法是使用
CC=gcc-4.2 rvm install 1.9.2-p290 --with-iconv-dir=/usr/local/Cellar/libiconv/1.13.1
强制它用真正的gcc构建。
答案 3 :(得分:0)
我发现这非常困难并禁止采用ruby 1.9。当然红宝石家伙可以安装这个吗?