CentOS编译安装PHP常见错误及解决办法

  1. 准备工作

在编译安装PHP之前,需要安装好所需的依赖库,如mysql、openssl等。安装命令如下:

yum install -y zlib-devel libxml2-devel libjpeg-devel libpng-devel libmcrypt-devel openssl-devel mysql-devel freetype-devel libcurl-devel libxslt-devel bzip2-devel;
  1. 配置选项

在准备好依赖库之后,需要配置编译选项。进入PHP的源码目录,执行如下命令:

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/png --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-exif --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-fpm --enable-mbstring --with-gd --enable-gd-native-ttf --with-openssl=/usr/local/openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-ftp --enable-intl --with-xsl;
  1. 编译和安装

配置好编译选项之后,执行如下命令进行编译和安装:

make && make install

过程中可能会出现如下常见错误及解决办法。

  1. “configure: error: libpng.(a|so) not found” 错误解决办法

出现这个错误是因为缺少libpng库。可以通过如下命令安装:

yum install -y libpng-devel
  1. “configure: error: jpeglib.h not found” 错误解决办法

出现这个错误是因为缺少jpeg库。可以通过如下命令安装:

yum install -y libjpeg-devel
  1. 示例1:

假设安装PHP过程中出现"configure: error: OpenSSL version 1.0.1 or greater required",我们需要先卸载OpenSSL,然后重新安装1.0.1或更高版本。

卸载OpenSSL命令如下:

yum remove openssl*

安装OpenSSL 1.0.1或更高版本命令:

wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz
tar -zxvf openssl-1.0.2l.tar.gz
cd openssl-1.0.2l
./config shared zlib --prefix=/usr/local/openssl
make && make install

重新配置和编译PHP即可。

  1. 示例2:

假设PHP编译安装后,在使用pecl安装扩展时出现了"cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable is set correctly"错误,这是因为缺少了autoconf。我们可以通过如下命令安装:

yum install autoconf

安装完成后,再次尝试安装扩展即可。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CentOS编译安装PHP常见错误及解决办法 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • linux 设置字符编码utf8

    启动mysql后,以root登录mysql root@Eadgar-virtual-machine:~# mysql -uroot -proot mysql> show variables like ‘character%’; #执行编码显示 +————————–+—————————…

    Linux 2023年4月11日
    00
  • Linux输入子系统(转)

      Linux输入子系统(Input Subsystem) 1.1.input子系统概述 输入设备(如按键,键盘,触摸屏,鼠标等)是典型的字符设备,其一般的工作机制是低层在按键,触摸等动作发生时产生一个中断(或驱动通过timer定时查询),然后cpu通过SPI,I2C或者外部存储器总线读取键值,坐标等数据,放一个缓冲区,字符设备驱动管理该缓冲区,而驱动的re…

    Linux 2023年4月11日
    00
  • linux dhcp 设置路由及主机名

    自动获取ipDHCP方式获取ip:dhclient [网络接口]释放通过DHCP获取的ip地址:dhclient -r [网络接口]查看网络接口 ifconfig -a(列出所有接口含禁用的) ethX:以太网链接 lo:本地回环接口 sitX:ipv6地址网卡接口 fddX:光纤网卡 pppX:ADSL宽带或VPN链接 ifconfig lo down(关…

    Linux 2023年4月12日
    00
  • CentOS服务器中安装FFmpeg的完整步骤

    安装FFmpeg是在CentOS服务器上进行多媒体处理的必要步骤。本文将提供在CentOS 7上安装FFmpeg的完整步骤,包括相关的示例说明。 步骤一:安装EPEL仓库 EPEL(Extra Packages for Enterprise Linux)仓库提供了CentOS服务器中许多额外的包。要安装FFmpeg,需要启用EPEL仓库。 在Linux终端输…

    Linux 2023年5月14日
    00
  • CentOS系统中使用yum命令安装redis的方法

    下面是 CentOS 系统中使用 yum 命令安装 Redis 的完整攻略: 1. 配置 EPEL 仓库 首先,我们需要在系统中启用 EPEL (Extra Packages for Enterprise Linux) 的 YUM 软件仓库,进而使用 yum 命令安装 Redis。EPEL 是针对 CentOS、RHEL、Scientific Linux 等…

    Linux 2023年5月14日
    00
  • Linux下MySQL卸载和安装图文教程

    Linux下MySQL卸载和安装图文教程 当我们需要卸载或重新安装MySQL时,需要进行一定的操作,本文将详细讲解Linux下MySQL的卸载和安装步骤。 卸载MySQL 步骤一:查找MySQL进程 首先需要查找MySQL的进程,使用以下命令: ps aux | grep mysql 如果出现以下类似的信息,则说明MySQL已启动: mysql 23937 …

    Linux 2023年5月14日
    00
  • shell读取配置文件-sed命令

    在编写启动脚本时,涉及到读取配置文件,特地记录下shell脚本读取启动文件的方式。主要提供两种格式的读取方式,方式一配置文件采用“[]”进行分区,方式二配置文件中需要有唯一的配置项名称。 配置文件格式如下: # cat -n config.ini 1 #MYSQL配置项 2 [MYSQL] 3 DB_HOST=192.168.0.1 4 DB_PORT=33…

    Linux 2023年4月17日
    00
  • 在 CentOS 7 中安装 MySQL 8 的教程详解

    在CentOS7中安装MySQL8的教程详解 MySQL是一个广泛使用的开源关系型数据库管理系统,是Web应用程序的重要组成部分。本文将详细介绍在CentOS7上安装MySQL8的教程。 步骤1:安装MySQL8存储库 首先,我们需要添加MySQL8存储库。我们可以通过下面的命令进行安装: sudo rpm -Uvh https://repo.mysql.c…

    Linux 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部