使用RVM Mac OS X安装Ruby 1.9.2时出现问题
我很抱歉我的无知-我对这一点非常陌生-但我已经尝试了所有方法,无法使用RVM安装1.9.2。我相信我已经正确安装了RVM,当我安装1.9.2时,ruby尝试编译时,我的make日志中出现以下错误:使用RVM Mac OS X安装Ruby 1.9.2时出现问题,ruby,macos,rvm,Ruby,Macos,Rvm,我很抱歉我的无知-我对这一点非常陌生-但我已经尝试了所有方法,无法使用RVM安装1.9.2。我相信我已经正确安装了RVM,当我安装1.9.2时,ruby尝试编译时,我的make日志中出现以下错误: ld: in /usr/local/lib/libz.1.dylib, file was built for unsupported file format which is not the architecture being linked (x86_64) for architecture
ld: in /usr/local/lib/libz.1.dylib, file was built for unsupported file format which is
not the architecture being linked (x86_64) for architecture x86_64
collect2: ld returned 1 exit status
make[1]: *** [../../../.ext/x86_64-darwin10.6.0/digest/md5.bundle] Error 1
make: *** [mkmain.sh] Error 1
其他一些信息:我运行的是32位OS X,收到了一个类似的错误-将(x86_64)替换为我相信的(i36)。我现在运行的是64位
*更新*:
我已经完成了TinMan要求我做的一切,但仍然没有用——只是想指出,我可以很好地安装1.8.7。尝试安装1.9.1和1.9.2时会显示以下错误消息:
`Installing Ruby from source to: /Users/tl/.rvm/rubies/ruby-1.9.2-p180, this may take a while depending on your cpu(s)...
ruby-1.9.2-p180 - #fetching
ruby-1.9.2-p180 - #downloading ruby-1.9.2-p180, this may take a while depending on your connection...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 8609k 100 8609k 0 0 655k 0 0:00:13 0:00:13 --:--:-- 939k
ruby-1.9.2-p180 - #extracting ruby-1.9.2-p180 to /Users/tl/.rvm/src/ruby-1.9.2-p180
ruby-1.9.2-p180 - #extracted to /Users/tl/.rvm/src/ruby-1.9.2-p180
ruby-1.9.2-p180 - #configuring
ruby-1.9.2-p180 - #compiling
ERROR: Error running 'make ', please read /Users/tl/.rvm/log/ruby-1.9.2-p180/make.log
ERROR: There has been an error while running make. Halting the installation.`
此外,我还升级了autoconf、automake、m4和libtools
最后,我的path和.bash_配置文件分别如下所示:
路径
巴什先生
*更新2*
我按照以下说明更新了autoconf、automake、m4和libtools:
RVM信息:
`系统:
system:
uname: "Darwin Tam-Les-MacBook-Pro.local 10.6.0 Darwin Kernel Version 10.6.0: Wed Nov 10 18:11:58 PST 2010; root:xnu-1504.9.26~3/RELEASE_X86_64 x86_64"
bash: "/bin/bash => GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)"
zsh: "/bin/zsh => zsh 4.3.9 (i386-apple-darwin10.0)"
rvm:
version: "rvm 1.5.2 by Wayne E. Seguin (wayneeseguin@gmail.com) [http://rvm.beginrescueend.com/]"
homes:
gem: "not set"
ruby: "not set"
binaries:
ruby: "/usr/bin/ruby"
irb: "/usr/bin/irb"
gem: "/usr/bin/gem"
rake: "/usr/bin/rake"
environment:
PATH: "/usr/local/upgraded/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/opt/local/bin:/Users/tl/.rvm/bin:/Users/tl/.rvm/bin"
GEM_HOME: ""
GEM_PATH: ""
MY_RUBY_HOME: ""
IRBRC: ""
RUBYOPT: ""
gemset: ""`
此外,您的路径看起来不允许RVM进行自身初始化。当RVM被初始化后,它将首先把它的路径放在你的~/.RVM上
你是怎么做到的?我真的是个新手,通过纯粹的猜测工作我已经走了这么远。我知道
*更新3*
大家好,我已经有一段时间没有放弃了,但我打算在这个周末再试一次。谢谢你的建议,我会告诉你接下来会发生什么。对于像我这样的新手来说,我严重低估了安装东西的难度 从32位升级到64位时,RVM控制下的所有Ruby二进制文件都需要重新编译。这意味着Ruby和gems与编译的C 这里有几个步骤可以让我从头开始尝试,之前已经做过了:
RVM get head
更新您的RVM。当前版本。RVM的版本是1.5.1,昨天已经更新rvm uninstall
重新安装所有Rubies,然后使用相同版本号的rvm install
。这将使Ruby版本达到64位gem pristine-all
重建gems。您可能可以使用rvmruby'gempristine--all'
自动完成这些操作编辑: […]我能够成功地安装1.8.7,但仍然收到1.9.2的相同错误。我还缺什么吗?在这种情况下.bash_配置文件重要吗 尝试键入
rvm notes
,并按照说明处理Mac OS的依赖项。您可能缺少导致问题的某些内容。如果这无助于用错误消息的文本编辑您的原始问题,那么我们可以看到它
[…]当它进入提取阶段时,它会说:“#提取到/Users/tl/.rvm/src/ruby-1.9.2-p180(已提取)”
啊,我去过那里。执行rm~/.rvm/src/ruby-1.9.2-p180/*
清空该目录。RVM将特定Ruby的tarball下载到~/.RVM/archive
目录中,然后将其解压缩到~/.RVM/src
。如果在提取过程中出现问题,它可能只有一些文件,这会导致在配置/生成周期中出现故障
编辑: 已升级我的autoconf、automake、m4和libtools 您是如何安装和升级它们的?Ruby on Mac OS需要苹果的头文件和XCode 请将
rvm info
的输出添加到原始问题中。它会有各种各样的环境信息
此外,您的路径看起来不允许RVM进行自身初始化。当RVM初始化后,它将首先将其路径放在您的~/.RVM
上
编辑:
rvm info
的输出显示rvm尚未初始化。它已安装,但这不是一回事
如果你没有对你的OSX安装做任何疯狂的事情,这应该是开箱即用的。我的建议是:
由于您的RVM安装仅适用于您的“tl”用户,因此与全新用户一起尝试RVM会给您一个全新的开始。如果新用户也无法安装RVM+Ruby 1.9.2,那么我建议重新安装您的计算机,因为可能发生了太多事情。我不知道您是否还在使用它,但我这样做就成功了:
sudorm/usr/local/lib/libz.*
:)
可能某些软件安装了错误的库。。。错误的架构一些程序在您的/usr/local中安装了一个版本的zlib,它不能用于将Ruby与之链接,因为(我想)它是i386,而您的Ruby in minting是x64 您的选择: 1) 通过执行简单的重命名,暂时将/usr/local完全移开
$mv /usr/local /usr/local-disabled
然后再次尝试编译。这是一种核心措施,但它可能会为您提供正确的链接库
2) 弯曲RVM构建Ruby,使其架构适合您的zlib。首先使用文件
并检查您的zlib是哪一个拱门
$file /usr/local/lib/libz.1.dylib
/usr/local/lib/libz.1.dylib: Mach-O dynamically linked shared library i386
这将告诉您需要为哪个拱门配置RVM
Place the following in your ~/.rvmrc file:
rvm_archflags="-arch i386"
3) 安装一个较新的zlib,默认情况下它可能会使用正确的arch进行编译,然后用默认设置重新构建ruby
4) 确实是皮奥特·苏格
$file /usr/local/lib/libz.1.dylib
/usr/local/lib/libz.1.dylib: Mach-O dynamically linked shared library i386
Place the following in your ~/.rvmrc file:
rvm_archflags="-arch i386"
rvm pkg install zlib
rvm reinstall 1.9.2 --with-zlib
sudo rm /usr/local/lib/libz.*
brew install ruby