当我尝试编译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。
增加 swap 文件可能有所帮助。我在尝试为 vim 编译 YouCompleteMe 时遇到了这个问题,通过增加 swap 文件来解决它。
https://www.digitalocean.com/community/articles/how-to-add-swap-on-ubuntu-14-04
看起来GCC正在分配大量内存,请检查此问题
尽可能停止许多服务(例如Apache、MySQL等),将释放更多内存,这样Phalcon就可以编译。最坏的情况是需要增加你的虚拟机的内存。
感谢@AndrewD提供的链接。
CFLAGS="$CFLAGS --param ggc-min-expand=0 --param ggc-min-heapsize=8192"
。但是没有成功,当运行make make: *** [phalcon.lo] Error 1
时遇到了virtual memory exhausted: Cannot allocate memory
的问题。尝试了其他答案中提到的swapfile方法,第一次就成功了。 - Ultimatergit clone --depth=1 git://github.com/phalcon/cphalcon.git
cd cphalcon/ext
sudo ./install
他解释说,这种方法使用的内存较少,但需要更多的时间。对于GCC版本>4.7,最终结果是相同的。