Linux PHP拓展fileinfo编译不通过的解决办法

最近将自己的博客上传到阿里云服务器,结果在下载vendor包的时候,需要PHP的fileinfo的拓展,本想安装拓展是一件非常简单的事情,然而麻烦的事情还是有的,make 的时候总是编译通不过,想着或许是PHP(7.2)版本太高了,所以就把PHP重新编译安装了(PHP版本7.0.2),但是在make的时候,还是不能通过,网上看了大致的解决办法都是在编译的时候加上--disable-fileinfo,安装完之后在从PHP源码包里安装拓展,但无论如何,都是要通过编译,只要编译,就是通不过,这个办法可能会让我们暂时编译通过,把PHP安装上,但是我们最终还是要安装这个拓展的。

编译fileinfo拓展不能通过,不能通过,网上说是 系统内存的原因,我想应该是的吧,因为的我的linux系统内存是1G,去掉其他服务使用,最后只剩半个G,貌似要想安装这个拓展,系统剩余内存可能要1G以上,个人解决办法,

既然内存不足,有点坑 ,那就临时使用交换分区来解决吧,交换分区即将磁盘分区当做虚拟内存来使用,使用完之后,再把虚拟分区删除掉就好了

(1)指定PHP相关配置目录和拓展,进入已经解压好的源码包里,检查安装环境  
  1.     ./configure --prefix=/usr/local/php \  
  2.     --exec-prefix=/usr/local/php \  
  3.     --bindir=/usr/local/php/bin \  
  4.     --sbindir=/usr/local/php/sbin \  
  5.     --includedir=/usr/local/php/include \  
  6.     --libdir=/usr/local/php/lib/php \  
  7.     --mandir=/usr/local/php/php/man \  
  8.     --with-config-file-path=/usr/local/php/etc \  
  9.     --with-mysql-sock=/tmp/mysql.sock \  
  10.     --with-mysqli \  
  11.     --with-pdo-mysql \  
  12.     --with-mcrypt=/usr/include \  
  13.     --with-mhash \  
  14.     --with-openssl \  
  15.     --with-gd \  
  16.     --with-iconv \  
  17.     --with-zlib \  
  18.     --enable-zip \  
  19.     --enable-inline-optimization \  
  20.     --disable-debug \  
  21.     --disable-rpath \  
  22.     --enable-shared \  
  23.     --enable-xml \  
  24.     --enable-bcmath \  
  25.     --enable-shmop \  
  26.     --enable-sysvsem \  
  27.     --enable-mbregex \  
  28.     --enable-mbstring \  
  29.     --enable-ftp \  
  30.     --enable-gd-native-ttf \  
  31.     --enable-pcntl \  
  32.     --enable-sockets \  
  33.     --with-xmlrpc \  
  34.     --enable-soap \  
  35.     --without-pear \  
  36.     --with-gettext \  
  37.     --enable-session \  
  38.     --with-curl \  
  39.     --with-jpeg-dir \  
  40.     --with-freetype-dir \  
  41.     --enable-opcache \  
  42.     --enable-fpm \   
  43.     --without-gdbm \  
  44.     --enable-fileinfo  
  45.   
  46.  
(2)创建 swap 交换分区 
dd if=/dev/zero of=/swapfile bs=64M count=16
mkswap /swapfile 
swapon /swapfile
make & make install  
// 结束后关闭交换分区 
swapoff /swapfile 
// 删除交换分区
rm /swapfile

(3)编译完成后的其他操作 



你可能感兴趣的:(PHP,Linux)