Phusion Passenger得到了一个g ++:内部错误

时间:2012-11-08 05:53:29

标签: apache2 rvm passenger

我已使用以下命令

成功安装了paggenger gem
rvmsuo gem install passenger

之后我尝试使用以下命令安装apache2的乘客模块

rvmsudo passenger-install-apache2-module

安装开始,检查并传递所有依赖项,并在编译时遇到以下错误,

g++ ApplicationPoolServerExecutable.cpp System.o Utils.o Logging.o -o 
    ApplicationPoolServerExecutable -I.. -D_REENTRANT -g -DPASSENGER_DEBUG -Wall -
    I/usr/local/include   -DPASSENGER_DEBUG ../boost/src/libboost_thread.a -lpthread
    g++: Internal error: Killed (program cc1plus)
    Please submit a full bug report.
    See <URL:http://gcc.gnu.org/bugs.html> for instructions.
    For Debian GNU/Linux specific bug reporting instructions, see <an url goes here>

    rake aborted!
    Command failed with status (1): [g++ ApplicationPoolServerExecutable.cpp Sy...]
    /opt/ruby-enterprise-1.8.6-20090201/lib/ruby/gems/1.8/gems/passenger-
    2.0.6/Rakefile:161

我已经检查了apache错误日志但是,我没有任何线索。

2 个答案:

答案 0 :(得分:2)

如果内存不足,您可以在Linux计算机上进行一些临时调整。

# Add 2GB of swap space
dd if=/dev/zero of=/swap bs=1k count=2048k
mkswap /swap
swapon /swap

# Set overcommit to 100
sysctl vm.overcommit_ratio=100

# Set swappiness (encourages more swapping)
sysctl vm.swappiness=50

在此之后,重试。如果一切顺利,只需重新启动即可撤消这些更改,当然,您可以将sysctl设置回其原始值并删除交换。请记住,重启不会释放磁盘空间,重启后需要rm /swap

答案 1 :(得分:1)

我试图在一个由256 mb ram组成的虚拟机中运行它。当我为该虚拟机分配更多内存(1 gb)时,问题就解决了。