没有足够的内存来构建phantom.js - 该怎么办?

时间:2015-03-10 08:31:12

标签: linux gcc build phantomjs

我正在尝试在VPS服务器(1Gb RAM)上编译phantom.js。构建过程会产生错误(持续):

obj/svg/SVGAllInOne.o svg/SVGAllInOne.cpp
{standard input}: Assembler messages:
{standard input}:168320: Warning: end of file not at end of a line;         
newline inserted
{standard input}: Error: open CFI at the end of file; missing              
.cfi_endproc directive
g++: internal compiler error: Killed (program cc1plus)

我在http://forum.qt.io/topic/22672/g-crash-when-compiling-qt5找到了同一文件的问题。人们说:没有足够的记忆。

在这种情况下我该怎么办?有关Phantom.js网站的信息表明它应该从源代码构建。

另外:它肯定是在内存不足的情况下因为我刚收到来自提供商的消息,说服务器内存不足。

2 个答案:

答案 0 :(得分:3)

您可以为VPS添加交换分区,或者只需添加交换文件来扩展虚拟内存:http://www.cyberciti.biz/faq/linux-add-a-swap-file-howto/

此外,您可以尝试在具有更多内存的其他系统上构建phantom.js,然后将其复制到目标VPS。但您需要确保两个系统具有相同的体系结构和相同的环境(编译器,库等版本)。

答案 1 :(得分:0)

我遇到了同样的问题。我重新运行build.sh传递--jobs 1并且它有效。