一、下载php7.2源码包并解压

确定源码目录(http://php.net/distributions)

wget http://xxx.oss-cn-beijing.aliyuncs.com/oss/admin/php-7.2.17.tar.gz  
tar -zxvf php-7.2.17.tar.gz  
pwd

官方下载源码压缩包https://www.php.net/distributions/php-7.2.17.tar.gz

二、安装依赖

apt-get install -y build-essential libtool libpcre3 libpcre3-dev zlib1g-dev   
                   openssl apt-utils libbz2-dev autoconf automake libtool re2c   
                   bison flex libxml2-dev libssl-dev libcurl4-openssl-dev libjpeg-dev   
                   libfreetype6-dev libsqlite3-dev oniguruma-dev

Ubuntu18.04下编译安装php7.2服务_php

一般编译程序依赖包有两种,带dev/devel后缀的包:libbz2-dev  不带后缀的包:libbz2,  带后缀的一般是和开发编译有关的,不带后缀的一般是和应用程序支持有关,如果再编译过程中报错缺少依赖,可以试试把两种依赖包都装上

准备安装目录

mkdir -p /home/www/php/bin   
         /home/www/php/sbin   
         /home/www/php/include   
         /home/www/php/etc   
         /home/www/php/lib   
         /home/www/php/man

Ubuntu18.04下编译安装php7.2服务_mysql_02

四、配置编译参数

cd php-7.2.17                    //进入源码解压目录  
./configure                      //配置编译参数和扩展  
  --prefix=/home/www/php   
  --exec-prefix=/home/www/php   
  --bindir=/home/www/php/bin   
  --sbindir=/home/www/php/sbin   
  --includedir=/home/www/php/include   
  --libdir=/home/www/php/lib   
  --mandir=/home/www/php/man   
  --enable-zip   
  --enable-pdo   
  --enable-inline-optimization   
  --enable-shared   
  --enable-xml   
  --enable-bcmath   
  --enable-shmop   
  --enable-sysvsem   
  --enable-mbregex   
  --enable-mbstring   
  --enable-ftp   
  --enable-pcntl   
  --enable-sockets   
  --enable-fileinfo   
  --enable-filter   
  --enable-soap   
  --enable-session   
  --enable-fpm   
  --with-config-file-path=/home/www/php/etc   
  --with-mhash   
  --with-openssl   
  --with-bz2   
  --with-mysqli=mysqlnd   
  --with-pdo-mysql=mysqlnd   
  --with-iconv   
  --with-zlib   
  --with-xmlrpc   
  --with-gettext   
  --with-gd    
  --with-curl   
  --with-jpeg-dir   
  --with-freetype-dir   
  --with-fpm-user=www   
  --with-fpm-group=www   
  --with-pear=/home/www/php/bin

Ubuntu18.04下编译安装php7.2服务_mysql_03

php 编译安装参数详解https://blog.csdn.net/mengzuchao/article/details/81912195

配置成功截图:

Ubuntu18.04下编译安装php7.2服务_mysql_04


五、编译安装,配置路径

make                                                         //编译  
make install                                                 //安装  
....  


cp sapi/fpm/init.d.php-fpm  /home/www/php/bin/php-fpm        //拷贝php-fpm运行程序到bin目录  
cp /home/www/php/etc/php-fpm.conf.default /home/www/php/etc/php-fpm.conf  //拷贝php-fpm配置
cp php.ini-production /home/www/php/etc/php.ini                           //拷贝生成php配置
....

编译成功截图:

Ubuntu18.04下编译安装php7.2服务_后缀_05


 六、服务启动

/home/www/php/bin/php-fpm start                           //启动fpm  
/home/www/php/bin/php

Ubuntu18.04下编译安装php7.2服务_mysql_06

七、可能遇到的问题

问题:编译失败,没有编译成功

解决:php安装编译需要gcc环境,所以请保证系统中安装了gcc编译环境

ubuntu16.04源码编译安装PHP7.2.5https://www.loyating.com/article/19

centos7 源码编译安装 phphttps://www.cnblogs.com/l5gw/p/10992958.html