C/C++项目编译时内存不足,通过增加交换分区解决,交换分区一般会设置成内存的2倍,具体如下:
1.使用交换分区
#count的大小就是增加的swap空间的大小,64M是块大小,所以空间大小是bs*count=16GB
sudo dd if=/dev/zero of=/mnt/16Gbswapfile bs=64M count=256
#把刚才空间格式化成swap格式
sudo mkswap /mnt/16Gbswapfile
#使用刚才创建的swap空间
sudo swapon /mnt/16Gbswapfile
2.永久生效
编辑 /etc/fstab 文件:
sudo gedit /etc/fstab
在文件末尾加上如下一行:
/mnt/16Gbswapfile none swap sw 0 0
3.取消交换分区
sudo swapoff /mnt/16Gbswapfile
sudo rm /mnt/16Gbswapfile
4. 交换分区查看
free -m 或者 swapon -s