- 1. 问题描述
- 2. 解决方法——swap分区
在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 #详细的用法:swapoff --help #查看当前内存使用情况:free -m
参考链接:
https://blog.csdn.net/little_stupid_child/article/details/79188015
https://cuichongxin.blog.csdn.net/article/details/106208891
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)