【问题解决】C++: fatal error: Killed signal terminated program cc1plus
- 问题描述
- 解决方法——swap分区
1. 问题描述
在Linux系统中进行C++编译时,出现如下报错,导致编译中止:
C++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
2. 解决方法——swap分区
查阅相关信息后,认为是虚拟机内存不足造成的。通过创建swap分区解决了这个问题,编译成功。
下面总结一下swap分区的创建和激活等操作:
创建分区路径
sudo mkdir -p /var/cache/swap/
设置分区的大小
bs=64M是块大小,count=64是块数量,所以swap空间大小是bs*count=4096MB=4GB
sudo dd if=/dev/zero of=/var/cache/swap/swap0 bs=64M count=64
设置该目录权限
sudo chmod 0600 /var/cache/swap/swap0
创建SWAP文件
sudo mkswap /var/cache/swap/swap0
激活SWAP文件
sudo swapon /var/cache/swap/swap0
查看SWAP信息是否正确
sudo swapon -s
swap0文件的路径在/var/cache/swap/下,编译完后, 如果不想要交换分区了, 可以删除。
删除交换分区的命令:
sudo swapoff /var/cache/swap/swap0
sudo rm /var/cache/swap/swap0
释放空间命令:
sudo swapoff -a