码迷,mamicode.com
首页 > 其他好文 > 详细

编译时:virtual memory exhausted: Cannot allocate memory

时间:2016-07-13 13:26:47      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:

一、问题

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

二、解决方法

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

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

 

[html] view plain copy
 
  1. [root@Byrd byrd]# free -m  
  2.              total       used       free     shared    buffers     cached  
  3. Mem:           512        108        403          0          0         28  
  4. -/+ buffers/cache:         79        432  
  5. Swap:            0          0          0  
  6. [root@Byrd ~]# mkdir /opt/images/  
  7. [root@Byrd ~]# rm -rf /opt/images/swap  
  8. [root@Byrd ~]# dd if=/dev/zero of=/opt/images/swap bs=1024 count=2048000  
  9. 2048000+0 records in  
  10. 2048000+0 records out  
  11. 2097152000 bytes (2.1 GB) copied, 82.7509 s, 25.3 MB/s  
  12. [root@Byrd ~]# mkswap /opt/images/swap  
  13. mkswap: /opt/images/swap: warning: don‘t erase bootbits sectors  
  14.         on whole disk. Use -f to force.  
  15. Setting up swapspace version 1, size = 2047996 KiB  
  16. no label, UUID=59daeabb-d0c5-46b6-bf52-465e6b05eb0b  
  17. [root@hz mnt]# swapon /opt/images/swap  
  18. [root@hz mnt]# free -m  
  19.              total       used       free     shared    buffers     cached  
  20. Mem:           488        481          7          0          6        417  
  21. -/+ buffers/cache:         57        431  
  22. Swap:          999          0        999  

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

 

使用完毕后可以关掉swap:

 

[html] view plain copy
 
 技术分享技术分享
  1. [root@hz mnt]# swapoff swap  
  2. [root@hz mnt]# rm -f /opt/images/swap  

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

编译时:virtual memory exhausted: Cannot allocate memory

标签:

原文地址:http://www.cnblogs.com/holdon521/p/5666298.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!