CentOS8编译安装(升级)php7.4.1及问题解决
编译或升级新的PHP版本之前请先做好备份。
PHP7.4及以上版本与之前的版本相比较,无论是功能还是安装所要的依赖包,都有了一些变化,此处不说功能,只说编译安装或升级到PHP4及以上版本的方法。
PHP7.4版本,需要对扩展与依赖作出改变,如如常见的GD库扩展,--with-gd就要改成--enable-gd。这些都好说,不好说的是依赖的问题。Linux安装软件,导致无法安装的原因绝大多数都是依赖包的问题。PHP7.4刚发布时,就尝试安装,遗憾,遇到依赖问题而搁浅,好在今天完成了。我安装的是PHP7.4.1,以下就是所遇到的问题及对应的解决方法:
问题一 error: Package requirements (sqlite3 > 3.7.4) were not met
解决方法
yum -y install sqlite-devel
问题二 error: Package requirements (oniguruma) were not met
解决方法(已失效 2020-06-26更新)
<span style="text-decoration: line-through;">yum install https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/o/oniguruma-5.9.5-3.el7.x86_64.rpm<br></br><br></br>yum install https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/o/oniguruma-devel-5.9.5-3.el7.x86_64.rpm<br></br><br></br>yum install -y oniguruma<br></br>yum install -y oniguruma-devel</span><br></br>
2020-06-26更新
configure: error: Package requirements (oniguruma) were not met: Package 'oniguruma', required by 'virtual:world', not found
解决方法:通过源码包安装方式
环境说明:centos8,(Ps:关于centos7,未测)。
1)获取源码
cd /usr/local/src
wget https://github.com/kkos/oniguruma/archive/v6.9.4.tar.gz -O oniguruma-6.9.4.tar.gz
2)安装
tar -zxf oniguruma-6.9.4.tar.gz
cd oniguruma-6.9.4
./autogen.sh
./configure --prefix=/usr # 注意:此处安装路经不省略,若省略,php make时提示找不到该包
make && make install
编译安装(或升级PHP7.4)所遇到的主要就是这两个问题,对于其他的报错,都是依赖的问题,根据对应的提示安装相应的依赖就行了。
以下是预编译完成后PHP所无法识别的扩展,也就是,这些扩展在预编译的时候就不要选上了:
【警示】以下是不可用选项
configure: WARNING: unrecognized options:
--with-libxml-dir,
--with-pcre-regex,
--with-pcre-dir,
--with-gd,
--with-jpeg-dir,
--with-png-dir,
--with-freetype-dir,
--enable-mbregex-backtrack,
--with-onig,
--enable-wddx,
--with-libxml-dir,
--enable-zip
我是夕阳何处寻,期待和优秀的你一起同行!
夕阳何处寻
2019年12月22日