[https://www.jianshu.com/p/34dd0abb71ee
](https://www.jianshu.com/p/34dd0abb71ee)
编译安装 PHP 的任何版本,过程中比较繁琐的就是依赖的问题,导致configure的问题。本文就7.4.33的版本,整理较全的依赖的安装,由于是后补的,难免会存在遗漏的情况,最后再附上个人认为比较全的错误提示指南。
./configure --with-php-config=/(php编译目录)/bin/php-config --with-curl=/(curl源码目录)
1 安装必要依赖
yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel libzip-devel pcre-devel sqlite-devel epel-release automake libtool libxslt-devel
2 安装oniguruma
此部分需要单独安装,此部分执行 autogen.sh 中可能会遇到问题,主要就是 automake 相关的问题,必要依赖中的 automake 和 libtool 是为了解决此问题的,如果遇到其他失败,照提示安装依赖即可。
wget https://github.com/kkos/oniguruma/archive/v6.9.4.tar.gz -O oniguruma-6.9.4.tar.gz
tar -zxvf oniguruma-6.9.4.tar.gz
cd oniguruma-6.9.4/
./autogen.sh
./configure --prefix=/usr --libdir=/lib64
make && make install
3 安装PHP
# 1 下载
wget https://www.php.net/distributions/php-7.4.33.tar.gz
# 2 解压进入目录
tar zxvf php-7.4.33.tar.gz
cd php-7.4.33
# 3 编译
./configure --prefix=/usr/local/php74 \
--with-config-file-path=/usr/local/php74/etc \
--with-curl \
--with-gettext \
--with-iconv-dir \
--with-kerberos \
--with-libdir=lib64 \
--with-mysqli \
--with-openssl \
--with-pdo-mysql \
--with-pear \
--with-xmlrpc \
--with-xsl \
--with-zlib \
--with-bz2 \
--with-mhash \
--enable-fpm \
--enable-bcmath \
--enable-inline-optimization \
--enable-mbregex \
--enable-mbstring \
--enable-opcache \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-xml \
--enable-fpm \
# 4 安装
make && make install
4 配置并启动PHP
此处需要按各自的系统权限处理,本人的服务器走的是默认。
# 复制 php.ini,php-7.4.33 中的 php.ini-production
cp php.ini-production /usr/local/php74/etc/php.ini
# 进入/usr/local/php74/etc 目录中,配置默认文件
cd /usr/local/php74/etc
cp php-fpm.conf.default php-fpm.conf
cp php-fpm.d/www.conf.default php-fpm.d/www.conf
# 启动 php
/usr/local/php74/sbin/php-fpm
# 重启 php 按信号量重启
ps -ef | grep php
kill -USR2 主进程号
5 异常处理:https://blog.51cto.com/u_15127553/4182428
-bash: php: command not found
5.1 查看echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
方法二:
修改~/.bash_profile文件,将php的可执行路径加到PATH=$PATH:$HOME/bin之后
vi ~/.bash_profile
PATH=$PATH:$HOME/bin:/data/nmp/php/bin
export PATH=$PATH:/usr/local/php74/bin
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。