编译Phalcon - 虚拟内存耗尽:无法分配内存

时间:2014-04-02 18:26:24

标签: memory gcc phalcon

当我尝试编译Phalcon时,出现错误:

virtual memory exhausted: Cannot allocate memory

我正在运行以下命令

git clone --depth=1 git://github.com/phalcon/cphalcon.git 
cd cphalcon/build 
sudo ./install

我有1GB RAM的VPS

3 个答案:

答案 0 :(得分:33)

添加更多swapfile可能有所帮助。我试图为vim编译YouCompleteMe时遇到了这个问题,通过添加swapfile来解决它。

https://www.digitalocean.com/community/articles/how-to-add-swap-on-ubuntu-14-04

答案 1 :(得分:12)

GCC似乎正在分配大量内存,请查看

https://web.archive.org/web/20141202015428/http://hostingfu.com/article/compiling-with-gcc-on-low-memory-vps

停止尽可能多的服务(Apache,MySQL等)将释放更多内存,Phalcon将编译。在最坏的情况下,您需要增加虚拟盒的内存。

感谢@AndrewD提供有效的链接。

答案 2 :(得分:2)

Andres建议的另一个选择是从不同的文件夹构建:

https://forum.phalconphp.com/discussion/7891/upgrading-from-201-to-205-getting-virtual-memory-exhausted-canno

步骤将是......

git clone --depth=1 git://github.com/phalcon/cphalcon.git
cd cphalcon/ext
sudo ./install

正如他解释的那样,这种方法使用更少的内存,但需要更多的时间,对于更新版本的GCC> 4.7,最终结果是相同的。