我在 OSX Mountain Lion 上使用 RVM 来管理我的各种 Ruby 安装,其中我有 1.9.3 的 32 位和 64 位版本。我遇到的问题是 32 位和 64 位 Ruby 安装需要不同的 libyaml 安装,但它们都在同一位置 (~/.rvm/usr) 查找 libyaml。所以安装 32 位 libyaml 会导致运行 64 位 Ruby 时出错,反之亦然。
任何解决方案的想法?
我在 OSX Mountain Lion 上使用 RVM 来管理我的各种 Ruby 安装,其中我有 1.9.3 的 32 位和 64 位版本。我遇到的问题是 32 位和 64 位 Ruby 安装需要不同的 libyaml 安装,但它们都在同一位置 (~/.rvm/usr) 查找 libyaml。所以安装 32 位 libyaml 会导致运行 64 位 Ruby 时出错,反之亦然。
任何解决方案的想法?
我最终使用了 Homebrew:
brew install --universal libyaml
然后我创建了一个符号链接,以便 rvm 使用正确的 libyaml:
ln -s /usr/local/Cellar/libyaml/0.1.4 ~/.rvm/usr
这让我启动并运行。
您必须知道将 libyaml 构建为两个平台的胖二进制文件的参数 - 然后可以将单个位置用于两者...如果您找到它的参数,然后为rvm 打开一张票以尊重以下标志--32
// for--64
--universal
rvm pkg install ...