gpt4 book ai didi

ruby - Mac OSX Lion 和 Ruby - [致命] 分配内存失败

转载 作者:数据小太阳 更新时间:2023-10-29 06:46:19 24 4
gpt4 key购买 nike

我在使用 Ruby 和 OSX Lion 时遇到严重问题 - 每当我尝试启动 Rails 或什至是 rake 工具时,我都会收到此错误:

[FATAL] failed to allocate memory

我尝试在不同版本(1.9.2-p180、1.9.2-p290、1.9.2-head)中重新编译 ruby​​,但它总是一样。

但是我注意到我可以删除一些 gems,然后“rake”工具会起作用,只有“rails s”会因该错误而死掉。似乎实际上没有足够的内存来容纳我正在使用的这么多 gem ,但这又一次看起来很奇怪——它在雪豹上工作得很好,甚至在我公司的 mac mini 上和 Lion 上工作——唯一的区别是mini 升级了 Snow Leopard -> Lion,而在我的 iMac 上它是干净的 Lion 安装。

有什么想法吗?是否有某种设置可以增加 OSX/Lion 上的内存?

最佳答案

我花了一些时间才弄明白,但这是解决方案:

这个问题是由 mysql2 gem 引起的,当我切换到 ruby-mysql 时,它又开始工作了(记得从 mysql2 更改适配器> 到 database.yml 中的 mysql!)

所以我开始思考 mac mini 和 iMac 之间的区别。基本上 mini 运行的是从 Snow Leopard 升级而来的 Lion,它是 Leopard 的升级版,它有用于 mysql 和 pgsql 服务器的良好的旧 Mac 端口。因此,当使用端口库编译 gem 时。

另一方面,新安装 Lion 的 iMac 有 Zend Server 包(apache + php + mysql 二进制文件)和一个包含编译 gem 所需库的 Homebrew 包“mysql-connector-c”。

总而言之,似乎 ports 版本的 mysql 可以正常工作,而 Homewbrew 连接器却不能(它泄漏了一些内存?)。

希望这对您有所帮助。

关于ruby - Mac OSX Lion 和 Ruby - [致命] 分配内存失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7056157/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com