php72的源码编译

一.CENTOS系统php72的源码编译

cd /usr/local/src
wget https://www.php.net/distributions/php-7.2.29.tar.gz
tar -xzvf php-7.2.29.tar.gz
cd php-7.2.29
yum -y install openssl.x86_64 openssl-devel.x86_64 openssl-libs.x86_64
./configure  --prefix=/usr/local/php73 --with-fpm-systemd --with-gettext --with-iconv-dir --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-zlib --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-mbregex --enable-mbstring --enable-soap --enable-sockets --enable-xml --enable-zip
// 如果编译失败,依据各个系统本身特性安装相应缺失软件后进行再编译或者删除掉configure命令相关扩展参数进行再编译
make && make install
cp ./sapi/fpm/php-fpm.service /usr/lib/systemd/system/php72-fpm.service
cd /usr/local/php72/etc/
cp php-fpm.conf.default php-fpm.conf
cd /usr/local/php72/etc/php-fpm.d/
cp www.conf.default www.conf
cp /usr/local/src/php-7.2.29/php.ini-development /usr/local/php72/lib/php.ini

修改/usr/local/php72/etc/php-fpm.conf 
pid = run/php-fpm.pid  // 前面的分号去除
error_log = log/php-fpm.log  // 前面的分号去除
修改 /usr/local/php72/etc/php-fpm.d/www.conf
user = apache // 前面的分号去除
group = apache // 前面的分号去除
listen = 127.0.0.1:9200  // 前面的分号去除 根据实际业务需求修改端口号

systemctl enable php72-fpm.service
systemctl restart php72-fpm.service

二.ubuntu18.04 源码编译安装 PHP 7.3

1.下载PHP源代码
首先需要从PHP官网下载PHP7.3.1的源代码,保存为php-7.3.1.tar.xz。
http://cn2.php.net/distributions/php-7.3.1.tar.xz
在上述文件保存的目录中打开终端,使用命令将其解压,并使用cd进入解压后的目录

tar -xvJf ./php-7.3.1.tar.xz
cd php-7.3.1

2.安装依赖
其次,需要安装一些编译PHP所需要的依赖

sudo apt update
sudo apt install gcc
sudo apt install make
sudo apt install openssl
sudo apt install curl
sudo apt install libbz2-dev
sudo apt install libxml2-dev
sudo apt install libjpeg-dev
sudo apt install libpng-dev
sudo apt install libfreetype6-dev
sudo apt install libzip-dev

3.配置
在编译前,需要对PHP进行配置,以供其生成对应的makefile文件

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysqli --with-pdo-mysql --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --enable-ftp --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo --enable-maintainer-zts

配置成功后会出现如下字样

+--------------------------------------------------------------------+
| License:                                                           |
| This software is subject to the PHP License, available in this     |
| distribution in the file LICENSE.  By continuing this installation |
| process, you are bound by the terms of this license agreement.     |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point.                            |
+--------------------------------------------------------------------+

Thank you for using PHP.

在这一步中,如果出现无法找到某个依赖的情况,可以尝试使用sudo apt install来重新安装一下没有找到的依赖。

4.编译并安装PHP
在完成配置后,可以直接使用make来进行编译,可以使用参数-j来指定编译线程数量来多线程编译

make -j4

编译需要一段比较长的时间,请稍作等待,编译成功后会输出如下内容

Build complete.
Don't forget to run 'make test'.

然后执行以下命令进行安装

sudo make install

执行完成后,PHP将会被安装到/usr/local/php/。

5.验证PHP
可以使用如下指令来输出PHP的版本,来验证是否正确安装

/usr/local/php/bin/php -v

如果正确安装,将会出现如下内容

PHP 7.3.1 (cli) (built: Jan 18 2019 20:11:04) ( ZTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.1, Copyright (c) 1998-2018 Zend Technologies

到这一步为止,PHP7.3.1便成功从源代码编译安装了。

6.复制php.ini
编译安装后的目录并不会有现成的php.ini,需要手动复制过去。
在解压出来的源代码目录中,有供开发环境使用的php.ini-development和供生产环境使用的php.ini-production。
输入命令来复制(以开发环境为例)

sudo cp php.ini-development /usr/local/php/etc/php.ini

参考资料
Ubuntu 16.04 源码编译安装PHP7
https://blog.csdn.net/csCrazybing/article/details/79276396
configure: error: Please reinstall the libzip distribution
https://stackoverflow.com/questions/45775877/configure-error-please-reinstall-the-libzip-distribution

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叫我峰兄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值