Skip to main content
 Web开发网 » 站长学院 » 浏览器插件

CentOS8 编译安装 PHP8.0.8

2021年10月25日10450百度已收录

前言上次编译安装了Nginx(参见:CentOS8.4 编译安装Nginx1.20.1),这次我们来编译安装PHP。

环境和版本服务器:CentOS8 64位

PHP:8.0.8

下载页面地址:

tar.gz包下载链接:

安装前准备一、下载PHP8源码包

wget --no-check-certificate

CentOS8 编译安装 PHP8.0.8  php8 第1张

下载成功。(这里由于php官网ssl证书不可信,所以要带--no-check-certificate参数忽略才可以正常下载。wget命令详解可参考:linux wget命令详解)

二、解压源码包

tar -zxvf php-8.0.8.tar.gz

CentOS8 编译安装 PHP8.0.8  php8 第2张

解压完成如上图所示。

三、进入php-8.0.8目录

CentOS8 编译安装 PHP8.0.8  php8 第3张

这是目录内的所有文件。

四、安装必备依赖

yum install -y gcc-c++ autoconf make \libjpeg libjpeg-devel \libpng libpng-devel \freetype freetype-devel \libxml2 libxml2-devel \zlib zlib-devel unzip \zip libzip-devel \glibc glibc-devel \glib2 glib2-devel \bzip2 bzip2-devel \curl curl-devel libcurl-devel \ncurses openssl-devel \gdbm-devel db4-devel libXpm-devel \libX11-devel gd-devel gmp-devel \readline-devel libxslt-devel \expat-devel xmlrpc-c xmlrpc-c-devel \libicu-devel libmcrypt-devel \libmemcached-devel \oniguruma oniguruma-devel \sqlite-devel \wget五、安装epel

yum install -y yum-utilspackage-cleanup --cleandupesyum update -yyum install -y epel-release# 如果找不到epel-release包,则进行下面两步操作# wget 上面两步依赖的安装速度,取决于系统现有依赖的多少、网速等配置,可能会耗时长点。

CentOS8 编译安装 PHP8.0.8  php8 第4张

CentOS8 编译安装 PHP8.0.8  php8 第5张

如上图,我的安装依赖部分过程。

安装一、查看可配置的编译参数

./configure --help如果直接执行命令看手册体验不友好的话,可以到php官网看“核心配置选项列表”,看的时候要注意上面标注的版本区别。

官网地址:

二、根据自己需要,选择合适的编译参数安装:

./configure --prefix=/usr/local/php \--enable-gd \--enable-dba \--enable-fpm \--enable-dom \--enable-pdo \--enable-exif \--enable-intl \--enable-soap \--enable-pcntl \--enable-shmop \--enable-bcmath \--enable-filter \--enable-session \--enable-sockets \--enable-calendar \--enable-mbstring \--enable-simplexml \--disable-fileinfo \--with-bz2 \--with-cdb \--with-curl \--with-pear \--with-zlib \--with-mhash \--with-iconv \--with-mysqli \--with-openssl \--with-pcre-jit \--with-pdo-mysql \--with-mysql-sock \--with-openssl-dir

CentOS8 编译安装 PHP8.0.8  php8 第6张

如上图,检查和配置完毕。

注:对于./configure脚本文件(或者你也可以把它称之为局部命令,但是注意执行要带./configure),以及后面编译和安装要使用的make和make install感兴趣的同学,可以参考我之前的文章:Linux中关于 ./configure、make与make install 命令的说明

可能遇到的报错(部分是上面一起执行没有安装成功,这里可能要分开单独安装):

1、Package 'libxml-2.0', required by 'virtual:world', not found

重新单个执行安装libxml-devel即可

yum install libxml2-devel2、Package 'sqlite3', required by 'virtual:world', not found

单个安装sqlite-devel

yum install sqlite-devel3、configure: error: Please reinstall the BZip2 distribution

重新安装bzip2-devel

yum -y install bzip2-devel4、Package 'libcurl', required by 'virtual:world', not found

安装libcurl-devel

yum install libcurl-devel5、Package 'libpng', required by 'virtual:world', not found

安装libpng-devel

yum install libpng-devel6、icu系列

Package 'icu-uc', required by 'virtual:world', not foundPackage 'icu-io', required by 'virtual:world', not foundPackage 'icu-i18n', required by 'virtual:world', not found安装参考:Linux CentOS安装ICU库

7、Package 'oniguruma', required by 'virtual:world', not found

安装参考:Linux CentOS 8 安装 oniguruma 和 oniguruma-devel

三、编译

make编译需要点时间。

CentOS8 编译安装 PHP8.0.8  php8 第7张

CentOS8 编译安装 PHP8.0.8  php8 第8张

编译完成,最后提示别忘了 make test,测试不测试区别不大,我们下面直接安装。

四、安装

make install

CentOS8 编译安装 PHP8.0.8  php8 第9张

CentOS8 编译安装 PHP8.0.8  php8 第10张

安装完毕。

测试通过找到php执行文件,查看版本测试是否安装成功

[root@haoqixin php-8.0.8]# /usr/local/php/bin/php -v

CentOS8 编译安装 PHP8.0.8  php8 第11张

如上图,OK。

创建软连接一直使用 /usr/local/php/....这么长的前缀会很麻烦和浪费时间,我们来创建软连接:

ln -sf /usr/local/php/bin/php /usr/local/bin/phpln -sf /usr/local/php/bin/php-config /usr/bin/php-configln -sf /usr/local/php/bin/phpize /usr/local/bin/phpizeln -sf /usr/local/php/bin/pecl /usr/local/bin/pecl现在再次执行 php -v 验证创建

CentOS8 编译安装 PHP8.0.8  php8 第12张

Success!

复制配置文件默认刚安装的php是没有正式(有默认供修改)的配置文件的,如下命令演示,我们复制提供的默认文件来使用。

以及复制系统启动脚本,和修改文件权限等。

cp /root/demo_php/php-8.0.8/php.ini-development /usr/local/php/lib/php.inicp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.confcp /usr/local/php/etc/php-fpm.d/

CentOS8 编译安装 PHP8.0.8  php8 第13张

查看进程中是否启动[root@haoqixin init.d]# ps -ef |grep phpCentOS8 编译安装 PHP8.0.8  php8 第14张

测试终端执行代码[root@haoqixin ~]# php -r "echo '技术好奇心';"

CentOS8 编译安装 PHP8.0.8  php8 第15张

配置开机启动 php-fpmchkconfig php-fpm on

CentOS8 编译安装 PHP8.0.8  php8 第16张

总结OK,到此为止,PHP8已经全部安装完成了。

希望对大家学习有帮助。

评论列表暂无评论
发表评论
微信