Amaze UI Logo

码动指尖



Linux编译时:virtual memory exhausted: Cannot allocate memory


当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法。



在执行free -m的是时候提示Cannot allocate memory:

(swap文件可以放在自己喜欢的位置如/var/swap)


首先随便在一个未知创建一个文件夹

比如我是在/usr/src下

执行:mkdir /usr/src/swap

然后执行:dd if=/dev/zero of=/usr/src/swap/swap bs=1024 count=2048000

接下来执行:mkswap /usr/src/swap/swap

最后启动:swapon /usr/src/swap/swap



内存太小,增加内存可以解决。


使用完毕后可以关掉swap:

执行:swapoff /usr/src/swap/swap

rm -rf /usr/src/swap/swap


swap文件也可以不删除,留着以后使用,关键是你的虚拟机硬盘够用。



 Linux

作者  :  奕弈

喵喵喵,你在心上



评论


About ME

about me

奕弈

为了最初的心,努力奋斗,从不懈怠的学习。

我不想成为一个庸俗的人。十年百年后,当我们死去,质疑我们的人同样死去,后人看到的是裹足不前、原地打转的你,还是一直奔跑、走到远方的我?

Contact ME