php killed,错误解决:cc: Internal error: Killed (program cc1)

21c243e88e4d28a2db3e2e419f98e3a2.png

在给一个vps安装php扩展的时候,进行make编译时候报错,报错信息:cc: Internal error: Killed (program cc1),感觉莫名其妙。google了一下,发现是内存太小的问题(太穷了,买不起内存大的vps),网上的解决方案大致两种,我测试了下有效,特地写出来,完善一下解决方案。

方法1:增加交换区(虚拟内存)

该方法为通用方法, 在其他程序编译出现类似错误的时候也可以使用,不仅仅针对PHP扩展出错。

命令如下:sudo mkdir -p /var/cache/

sudo dd if=/dev/zero of=/var/cache/swap0 bs=2M count=1024

sudo mkswap /var/cache/swap0

sudo swapon /var/cache/swap0

解释一下上面的命令

首先虚拟内存就是硬盘上的一个文件,所以需要先创建该文件的文件目录

dd命令:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。

可以理解为在创建虚拟内存时需要这么做。但是dd用处不仅仅是这一种场景。有兴趣的同学可以自己百度查一下。

dd参数:

bs=bytes:同时设置读入/输出的块大小为bytes个字节。

count=blocks:仅拷贝blocks个块,块大小等于ibs/bs指定的字节数

mkswap 设置交换分区

swapon 启用交换分区

注意: 当服务器内存小于4G的时候,交换分区一般设置为是内存的2倍.

如果想删除这个交换区,则可以执行如下命令sudo swapoff /var/cache/swap0

sudo rm /var/cache/swap0

swapoff 关闭交换分区

rm 删除交换分区

方法2:设置编译参数

在php的编译参数后增加

--disable-fileinfo

重新编译,问题得到解决。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值