Ruby 获取libxml2.2.dylib的错误;文件不是必需的体系结构”;
我正在尝试使用rvm在运行Snow Leopard的Mac上安装Ruby 1.9.2 我的Ruby 获取libxml2.2.dylib的错误;文件不是必需的体系结构”;,ruby,macos,ruby-1.9,rvm,Ruby,Macos,Ruby 1.9,Rvm,我正在尝试使用rvm在运行Snow Leopard的Mac上安装Ruby 1.9.2 我的.bash\u配置文件包含 ARCHFLAGS="-arch x86_64" 要安装ruby,我运行: rvm install 1.9.2 -C --enable-shared 我在编译过程中出错。以下是make.error.log: [2010-01-20 10:03:00] make ld: in /usr/local/lib/libxml2.2.dylib, file is not of req
.bash\u配置文件包含
ARCHFLAGS="-arch x86_64"
要安装ruby,我运行:
rvm install 1.9.2 -C --enable-shared
我在编译过程中出错。以下是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
编辑:
我从源代码处安装了readline,并尝试如下安装:
rvm install 1.9.2 -C --enable-shared,--with-readline-dir=/usr/local
这导致了与以前相同的错误
rcltklib.bundle文件的位置为:
/usr/local/lib/ruby/1.8/i686-darwin9.7.0/tcltklib.bundle
(我认为这个文件是Ruby OSX安装的一部分)您正在为两种不同的体系结构设置ARCHFLAGS。为什么?只尝试使用-arch-x86_64
(据我所知,这是雪豹中的默认设置)。现在,我终于找到了答案。
我确实从rubyosx安装了Ruby1.8.7,似乎有一些坏库,rvm用它们来编译rubies
解决方案是从/usr/local
中删除rubyosx ruby
不太激烈的解决方案是在使用rvm编译时只重命名/usr/local
文件夹。之后,您可以重新命名它,它将按预期工作
很高兴它现在能工作。谢谢你的提示。在某处复制了这一行,但i386实际上似乎没有必要。但是没有解决问题。对我来说,它在雪豹身上“只起作用”。接下来要确保的是,在没有更改.bash_配置文件的情况下,所有最新和最棒的xCode都出现了同样的问题……感谢您的帖子!谢谢你的帖子。把/usr/local移到一边对我很有用。