添加swap内存解决c++: internal compiler error: Killed (program cc1plus)编译报错问题

症状

用命令行在宝塔面板安装mysql时候总是反复在44%处终止,报错c++: internal compiler error: Killed (program cc1plus),内部编译器错误

症状解读

系统内存太小,编译占用太多内存了,所以内存报错,任务停止

症状解决

  1. 添加内存条 自己用的服务器是2G内存,实际可用只有1gb左右,对于编译来说太难了,建议多加内存条

  2. 添加虚拟内存 使用临时内存可以解决此类问题,具体操作如下

创建临时分区命令

sudo dd if=/dev/zero of=/swapfile bs=64M count=32
#count的大小就是增加的swap空间的大小,64M是块大小,所以空间大小是bs*count=2048MB
sudo mkswap /swapfile
#把刚才空间格式化成swap格式
chmod 0600 /swapfile  
sudo swapon /swapfile
#使用刚才创建的swap空间

释放空间命令

swapoff -a
# 详细用法可以swapoff --help

过程中可以使用free -m命令来查看交换空间使用情况

参考

  1. 解决c++: internal compiler error: 已杀死 (program cc1plus)