无法在带RVM的Mountain Lion上安装Ruby 1.9.3:运行make时出错

无法在带RVM的Mountain Lion上安装Ruby 1.9.3:运行make时出错,ruby,macos,rvm,osx-mountain-lion,libz,Ruby,Macos,Rvm,Osx Mountain Lion,Libz,我正在尝试安装Ruby,这样我就可以完成“艰苦地学习Ruby”课程,而我在安装最新版本的Ruby时遇到了很多麻烦 以下是我日志的相关部分: compiling md5ossl.c linking shared-object digest/md5.bundle ld: in /usr/local/lib/libz.1.dylib, file was built for unsupported file format ( 0xce 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 0

我正在尝试安装Ruby,这样我就可以完成“艰苦地学习Ruby”课程,而我在安装最新版本的Ruby时遇到了很多麻烦

以下是我日志的相关部分:

compiling md5ossl.c
linking shared-object digest/md5.bundle
ld: in /usr/local/lib/libz.1.dylib, file was built for unsupported file format ( 0xce 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 0 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (x86_64): /usr/local/lib/libz.1.dylib for architecture x86_64
collect2: ld returned 1 exit status
make[2]: *** [../../../.ext/x86_64-darwin12.1.0/digest/md5.bundle] Error 1
make[1]: *** [ext/digest/md5/all] Error 2
make: *** [build-ext] Error 2
我在谷歌上搜索了一下,发现这篇文章的问题与此完全相同:

但答案是一个模棱两可的“更新libz-lib”。我不知道这是什么意思,我在谷歌上搜索找到了zlib,但我不知道这些和libz是不是一回事?我还发现另一个帖子指出libz是libtool,我的libtool版本是苹果公司的cctools-829版本,但是libtool和libz是一样的吗?我以前从未见过这些术语,也没有使用过Ruby,我只是完全困惑


我有GCC4.2.1和xcode 4.4.1。谢谢你的帮助,这是我在这里的第一篇帖子,所以如果我做得不对或者需要提供更多信息,请告诉我。我基本上是从我链接的标题中盗取了我的标题,因为我不确定如何格式化标题,我希望没问题。

作为说明,OSX没有在
/usr/local/lib
/usr/local/bin
中放入任何内容,所以你一定是自己在那里安装了一些东西,甚至可能是无意中安装的

如果您使用的是像或这样的Ruby管理器,那么他们有专门的构建工具来帮助您完成这个过程。这比从源代码安装容易得多,因为正确的补丁不仅应用于Ruby,而且还应用于依赖项,如
libz

在您的机器上,您可能会为错误的体系结构编译库。这些可能是从旧的PowerPC安装,甚至是从10.5之前的OS X版本的Intel 32位安装中滚动过来的


您最好的选择可能是简单地删除
/usr/local/lib/libz*
,然后使用与您的操作系统捆绑在一起的那些。您应该在
/usr/lib/libz*
中有一组可以工作的必需文件。

您还可以通过在shell“file/usr/local/lib/libz.1.dylib”中运行file命令来轻松检查编译的体系结构。是的,zlib和libz是相同的。