php编译 :virtual memory exhausted: Cannot allocate memory

有时候用vps建站时需要通过编译的方式来安装主机控制面板。对于大内存的VPS来说一般问题不大,但是对于小内存,比如512MB内存的VPS来说,很有可能会出现问题,因为编译过程是一个内存消耗较大的动作。
本人近期就遇到一个这样的问题:在512MB内存centos操作系统的VPS上编译安装某国内主机控制面板,在编译安装php时日志中有如下错误记录:
virtual memory exhausted: Cannot allocate memory
make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1

开始时的解决方法是先将很多的进程关闭,比如httpd、ftpd、sendmail等等,释放出了一部分内存后,再进行编译,仍然得到同样的编译错误。后来百度谷歌了很久才找到解决问题的方法,而且是在php.net上找到的解决方法,原文链接是:https:  //bugs.php.net/bug.php?id=48809

根据这个文章的方法将php安装配置文件中加了引号中的配置(不包括引号)“--disable-fileinfo”后终于编译通过。这里分享出来供参考。

时间: 2024-10-03 14:45:05

php编译 :virtual memory exhausted: Cannot allocate memory的相关文章

编译安装php时遇到virtual memory exhausted: Cannot allocate memory

有时候用vps建站时需要通过编译的方式来安装主机控制面板.对于大内存的VPS来说一般问题不大,但是对于小内存,比如512MB内存的VPS来说,很有可能会出现问题,因为编译过程是一个内存消耗较大的动作.本人近期就遇到一个这样的问题:在512MB内存centos操作系统的VPS上编译安装某国内主机控制面板,在编译安装php时日志中有如下错误记录:virtual memory exhausted: Cannot allocate memorymake: *** [ext/fileinfo/libmag

编译时:virtual memory exhausted: Cannot allocate memory

一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法. 二.解决方法 在执行free -m的是时候提示Cannot allocate memory: (swap文件可以放在自己喜欢的位置如/var/swap) [html] view plain copy [[email protected] byrd]# free -m total   

编译时:virtual memory exhausted: Cannot allocate memory,常见于VPS

原文链接:http://blog.csdn.net/taiyang1987912/article/details/41695895 一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序可能会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法解决. 二.解决方法 在执行free -m的时候提示Cannot allocate memory: (swap文件可以放在自己喜欢的位置如/var/sw

编译时:virtual memory exhausted: Cannot allocate memory(转)

一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法. 二.解决方法 在执行free -m的是时候提示Cannot allocate memory: (swap文件可以放在自己喜欢的位置如/var/swap) 1 [[email protected] byrd]# free -m 2 total used free shared buff

virtual memory exhausted: Cannot allocate memory

问题描述: 购买的Linux服务器,Linux服务器的内存为512MB. 在编译PHP的时候会提示:virtual memory exhausted: Cannot allocate memory,编译失败. 解决方法: 发生该问题的原因是服务器的内存不够,从而导致编译失败. 而购买的Linux服务器,未给你分配虚拟内存,所以可以通过自行增加虚拟内存的方法予以解决 [[email protected] ~]# free -m total used free shared buffers cach

virtual memory exhausted: Cannot allocate memory 解决方法

在阿里云买了个云服务器,内存1G.编译kudu时出现下面的错误: virtual memory exhausted: Cannot allocate memory 问题原因:由于物理内存本身很小,且阿里云服务器并没有分配swap空间,当物理内存不够用时, 物理内存中暂时不用的内容没地方转存. 解决方法:手动分配一个swap空间 dd if=/dev/zero of=/swap bs=1024 count=1M    #创建一个大小为1G的文件/swap             mkswap /s

Centos安装php提示virtual memory exhausted: Cannot allocate memory

由于内存不够,需要在php配置的时候./configure最后添加上 --disable-fileinfo >>./configure --prefix= ...........   --disable-fileinfo >> make >> .....

虚拟机无法分配内存 virtual memory exhausted: Cannot allocate memory

1.内存交换空间(swap)的构建 安装Linux时一定需要的两个分区:根目录和swap(内存交换空间). swap的功能:在应付物理内存不足的情况下所造成的内存扩展记录的功能. 物理内存不足的时候,swap使用硬盘来暂时放置内存中的信息. 设置一个swap分区 创建一个虚拟内存的文件 1.1 使用物理分区构建swap 针对没有建立swap分区的情况,基本用不到.在已建立swap分区情况下,直接跳到第二部分(创建虚拟内存文件). 分区先用fdisk在磁盘中分个区出来作为swap.然后设置一下sy

解决:virtual memory exhausted: Cannot allocate memor

问题描述: 购买的Linux服务器,Linux服务器的内存为512MB. 在编译PHP的时候会提示:virtual memory exhausted: Cannot allocate memory,编译失败. 解决方法: 发生该问题的原因是服务器的内存不够,从而导致编译失败. 而购买的Linux服务器,未给你分配虚拟内存,所以可以通过自行增加虚拟内存的方法予以解决: 1 2 3 4 dd if = / dev / zero of = / swap bs = 1024 count = 1M mks